Обычно я довольно хорошо разбираюсь в 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
Но мне представили вот это:
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
Что это? Просто еще один синтаксис или трюк с производительностью?
(Это на SQLServer, к сведению, но, предположительно, это может быть применено к другим ...)