Utilizzo di self join
Un self join consente di unire una tabella a se stessa. È possibile, ad esempio, utilizzare un self join per trovare i prodotti offerti da più fornitori.
Poiché la query riportata di seguito comporta l'esecuzione di un join della tabella ProductVendor
con se stessa, la tabella ProductVendor
svolge due ruoli. Tali ruoli possono essere distinti assegnando alla tabella ProductVendor
due alias diversi, pv1
e pv2
, nella clausola FROM. I due alias vengono utilizzati per qualificare i nomi delle colonne nella parte rimanente della query. Di seguito è riportato un esempio di istruzione di self join 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
Vedere anche
Concetti
Utilizzo di operatori nelle espressioni
Altre risorse
WHERE (Transact-SQL)
SELECT (Transact-SQL)
Operatori (Transact-SQL)
Esempi di istruzioni SELECT (Transact-SQL)