- INNER JOIN 將兩個表使用特定的key值(外鍵)串起來 (INNER JOIN)
//只有兩個表的Column有match到,才會回傳所有的ROW,若Customers有但是Orders沒有則不會被列出來
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
INNER JOIN Orders // 也可寫成 JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName; - LEFT JOIN 將兩個表使用特定的key值(外鍵)串起來 ( LEFT OUTER JOIN)
//以左邊的表為準,將右邊的表加進來;與INNER JOIN 不同的是當右邊的表為空值時,仍然會列出該//ROW;只有當Column都沒有Match到的時候才會回傳空ROW
SELECT Customers.CustomerName , Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID - RIGHT JOIN 將兩個表使用特定的key值(外鍵)串起來 ( RIGHT OUTER JOIN)
//以右邊的表為準,將左邊的表加進來;與INNER JOIN 不同的是當左邊的表為空值時,仍然會列出該//ROW;只有當Column都沒有Match到的時候才會回傳空ROW - FULL OUTER JOIN 將兩個表使用特定的key值(外鍵)串起來
//只要Match到就將內容匯進來不論其是否有值 - UNION
//將兩個SELECT 到的TABLE資料做結合( 兩資料表務必要同型態 順序 名稱 )
SELECT * FROM Customers WHERE Country ='Germany'
UNION (預設只選出DISTINCT 值 若要允許duplicate 則要改用 UNION ALL )
SELECT * FROM Suppliers WHERE Country ='Germany'
ORDER BY City - SELECT INTO 用來複製表的資料到另一個新表
SELECT * INTO CustomersBackup2013 (IN 'Back.mdb ')
FROM Customers ;
WHERE Country='Germany'//從LEFT JOIN的結果選出資料插入新資料表
SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2013
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID;//只複製出沒有資料的表格(只有Column schema)
SELECT *
INTO newtable
FROM table1
WHERE 1=0; - INSERT INTO 從表A插入表B資料(不會影響到現有資料)
//INSERT INTO 進階版寫法 從別的表插入資料↓↓↓
INSERT INTO Customers(CustomerName , Country)
SELECT SupplierName , Country FROM Suppliers
WHERE Country = 'Germany';
// 基礎版寫法直接插入值
INSERT INTO table_name
VALUES (value1,value2,value3,....)
// 基礎版寫法直接插入值2
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
全站熱搜
留言列表