Articles

SQL Server corelat Subquery

rezumat: în acest tutorial, veți afla despre SQL Server corelat subquery, care este o subquery care depinde de interogarea exterioară pentru valorile sale.

o subinterogare corelată este o subinterogare care utilizează valorile interogării exterioare. Cu alte cuvinte, depinde de interogarea exterioară pentru valorile sale. Din cauza acestei dependențe, o subinterogare corelată nu poate fi executată independent ca o subinterogare simplă.

Mai mult, o subinterogare corelată este executată în mod repetat, o dată pentru fiecare rând evaluat de interogarea exterioară. Subinterogarea corelată este, de asemenea, cunoscută sub numele de subinterogare repetată.

luați în considerare următorul tabel products din Baza de date eșantion:

produse

următorul exemplu găsește produsele al căror preț de listă este egal cu cel mai mare preț de listă al produselor din aceeași categorie:

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;
Code language: SQL (Structured Query Language) (sql)

iată rezultatul:

SQL Server corelate Subquery

în acest exemplu, pentru fiecare produs evaluat de interogare exterior, subquery găsește cel mai mare preț de toate produsele din categoria sa. Dacă prețul produsului curent este egal cu cel mai mare preț al tuturor produselor din categoria sa, produsul este inclus în setul de rezultate. Acest proces continuă pentru următorul produs și așa mai departe.

după cum puteți vedea, subinterogarea corelată este executată o singură dată pentru fiecare produs evaluat de interogarea exterioară.

în acest tutorial, ați învățat despre subinterogarea corelată SQL Server.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *