我通常非常精通JOINS,但这是新的.
假设有三个表(两个表的经典案例和第三个链接器表):
Customer Product Transaction
-------- ------- -----------
ID ID CustomerID
Name Desc ProductID
Cost Date
(简单的故意,我不能重现实际的结构,这不是我的代码.)
通常情况下,为了得到"谁买什么时候"的表格,我会这样做:
SELECT Customer.Name, Product.Desc, Transaction.Date
FROM Product
INNER JOIN Transaction ON Transaction.ProductID = Product.ID
INNER JOIN Customer ON Transaction.CustomerID = Customer.ID
Run Code Online (Sandbox Code Playgroud)
但我得到了这个:
SELECT Customer.Name, Product.Desc, Transaction.Date
FROM Product
INNER JOIN ( Transaction
INNER JOIN Customer ON Transaction.CustomerID = Customer.ID)
ON Transaction.ProductID = Product.ID
Run Code Online (Sandbox Code Playgroud)
这是什么?只是另一种语法或性能技巧?
(这是在SQLServer,FYI,但可能是可以应用于其他人......)