ÎncepețiÎncepe gratuit

Sub-interogare vs INNER JOIN

Adesea, rezultatele unei sub-interogări corelate pot fi replicate folosind un INNER JOIN. În funcție de cerințele tale, un INNER JOIN poate fi mai eficient, deoarece parcurge datele o singură dată, în timp ce sub-interogarea corelată se execută pentru fiecare rând din interogarea externă.

Vrei să afli populația din 2017 a celui mai mare oraș pentru fiecare țară din lume. Poți obține aceste informații din baza de date Earthquakes, folosind tabela Nations ca interogare externă și tabela Cities în sub-interogare.

Vei crea mai întâi această interogare ca o sub-interogare corelată, apoi o vei rescrie folosind un INNER JOIN.

Acest exercițiu face parte din cursul

Îmbunătățirea performanței interogărilor în SQL Server

Vezi cursul

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

SELECT
	n.CountryName,
	 (SELECT MAX(c.___) -- Add 2017 population column
	 FROM Cities AS c 
                       -- Outer query country code column
	 WHERE c.CountryCode = n.___) AS BiggestCity
FROM ___ AS n; -- Outer query table
Editează și rulează codul