Использование самосоединений
Таблицу можно соединить с собой в самосоединение. Например самосоединение можно использовать, чтобы найти товары, которые поставляют несколько производителей.
Поскольку следующий запрос соединяет таблицу ProductVendor
саму с собой, таблица ProductVendor
появляется в двух ролях. Чтобы добиться этих ролей, таблице ProductVendor
необходимо назначить два различных псевдонима (pv1
и pv2
) в предложении FROM. Эти псевдонимы используются для описания имен столбцов в оставшейся части запроса. Пример инструкции Transact-SQL с самосоединением:
USE AdventureWorks;
GO
SELECT DISTINCT pv1.ProductID, pv1.VendorID
FROM Purchasing.ProductVendor pv1
INNER JOIN Purchasing.ProductVendor pv2
ON pv1.ProductID = pv2.ProductID
AND pv1.VendorID <> pv2.VendorID
ORDER BY pv1.ProductID
См. также
Основные понятия
Использование операторов в выражениях
Другие ресурсы
Предложение WHERE (Transact-SQL)
SELECT (Transact-SQL)
Операторы (Transact-SQL)
Примеры использования инструкции SELECT (Transact-SQL)