Articles

SQL Server Correlated Subquery

Summary: tässä opetusohjelmassa opit SQL Server correlated subquery, joka on alakerros, joka riippuu uloimmasta kyselystä sen arvoista.

korreloiva alikvenssi on alikvenssi, joka käyttää ulomman kyselyn arvoja. Toisin sanoen se riippuu ulkoisesta kyselystä arvojensa suhteen. Tämän riippuvuuden vuoksi korreloitunutta alikvenssiä ei voida toteuttaa itsenäisesti yksinkertaisena alikvenssinä.

lisäksi korreloiva alakerta suoritetaan toistuvasti, kerran jokaista ulomman kyselyn arvioimaa riviä kohti. Korreloiva alakvenssi tunnetaan myös toistuvana alakvenssinä.

tarkastellaan seuraavaa products taulukko otostietokannasta:

tuotteet

seuraavassa esimerkissä löydetään tuotteet, joiden luettelohinta on saman tuoteryhmän tuotteiden korkein listahinta:

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)

tässä on tulos:

SQL Server Correlated Subquery

tässä esimerkissä alahuone löytää kategoriansa kaikista tuotteista korkeimman hinnan. Jos nykyisen tuotteen hinta on yhtä suuri kuin kaikkien kategoriansa tuotteiden Korkein hinta, tuote sisältyy tulosjoukkoon. Tämä prosessi jatkuu seuraavan tuotteen ja niin edelleen.

kuten näet, korreloiva alakerros suoritetaan kerran jokaista ulomman kyselyn arvioimaa tuotetta kohti.

tässä opetusohjelmassa olet tutustunut SQL Serverin korreloivaan alalajiin.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *