我是SQL新手,無法理解爲什麼在JOIN
語句中有FROM
關鍵字,如果我使用點符號來選擇我想要的tables.columns
。這兩個選擇我選哪張?我在w3schools定義中沒有看到關於哪個表是FROM
表的任何解釋。在下面的例子中,我如何知道FROM
選擇哪張表?由於我基本上已經選擇了哪個table.column
來選擇,它可以嗎?解釋在JOIN語句中選擇「FROM」的表格
例如:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
INNER JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
代碼兩者都在從表......,你可以從命令說,加入客戶和查詢將返回相同的如果它是內連接,則返回結果。在左連接中,「從」表是左表。當我開始使用sql時,這讓我感到困惑,所以請注意,左連接和左外連接是相同的,唯一的區別是語法 – CSharper 2014-10-03 18:30:40
是的。它可以是。在你的例子中,兩個表名可以交換,並且返回的行將是相同的。 (表名放置的重要性在於「外部」連接操作,即「左連接b」等同於「b右連接a」,但不同於「右連接b」。 – spencer7593 2014-10-03 18:41:03
就像'FROM'表的定義:你實際選擇的「from」是連接操作的結果,而不是一個表或另一個表.SQL指定的是兩個表上的「連接」操作。 Customers JOIN Orders ON ...'「。查詢選擇」from「作爲連接操作的結果(相等比較中表達式的順序無關緊要,'a.col = b.col'爲相當於指定'b.col = a.col';等於比較運算符的一個屬性。)最佳做法是在查詢中限定*所有*列引用(如您的示例所示)。 – spencer7593 2014-10-03 19:18:41