SQL Server Correlata Subquery
Sommario: in questo tutorial, potrete conoscere la sottoquery correlata SQL Server che è una sottoquery che dipende dalla query esterna per i suoi valori.
Una sottoquery correlata è una sottoquery che utilizza i valori della query esterna. In altre parole, dipende dalla query esterna per i suoi valori. A causa di questa dipendenza, una sottoquery correlata non può essere eseguita indipendentemente come una semplice sottoquery.
Inoltre, una sottoquery correlata viene eseguita ripetutamente, una volta per ogni riga valutata dalla query esterna. La sottoquery correlata è anche nota come sottoquery ripetuta.
si Consideri il seguente products
tabella dal database di esempio:
L’esempio seguente trova i prodotti il cui prezzo di listino è pari al più alto prezzo di listino dei prodotti all’interno della stessa categoria:
Code language: SQL (Structured Query Language) (sql)SELECT product_name, list_price, category_idFROM production.products p1WHERE list_price IN ( SELECT MAX (p2.list_price) FROM production.products p2 WHERE p2.category_id = p1.category_id GROUP BY p2.category_id )ORDER BY category_id, product_name;
Ecco il risultato:
In questo esempio, per ogni prodotto valutato dalla query esterna, la sottoquery trova il prezzo più alto di tutti i prodotti della sua categoria. Se il prezzo del prodotto corrente è uguale al prezzo più alto di tutti i prodotti della sua categoria, il prodotto è incluso nel set di risultati. Questo processo continua per il prossimo prodotto e così via.
Come puoi vedere, la sottoquery correlata viene eseguita una volta per ogni prodotto valutato dalla query esterna.
In questo tutorial, hai imparato a conoscere la sottoquery correlata a SQL Server.