Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Sisäkkäisten Alikyselyjen Käyttö From-Osiossa | Sisäkkäiset alikyselyt
SQL Jatkotasolla
Osio 2. Luku 3
single

single

Sisäkkäisten Alikyselyjen Käyttö From-Osiossa

Pyyhkäise näyttääksesi valikon

Sisäinen alikysely luo taulun, jonka kanssa voit suorittaa operaatioita ulommassa kyselyssä.

Tästä voidaan päätellä, että voit myös käyttää sisäistä kyselyä FROM-osiossa valitaksesi tietoja tästä taulusta.

Tarkastellaan esimerkkiä, jossa täytyy käsitellä employees, joiden salary on tietyn arvon yläpuolella. Mutta WHERE-ehdon sijaan tulisi käyttää sisäistä kyselyä:

123456
SELECT * FROM ( SELECT * From employees WHERE salary >= 70000 ) AS high_salary_employees

Uusi taulu on luotu sisäisellä alikyselyllä, jonka avulla voidaan käsitellä ja kerätä tietoja.

Note
Huomio

Huomaa, että tällaiselle taululle on annettava aliaksen.

Milloin tämä voi olla hyödyllistä?

Tällainen kysely on erittäin luettava; joskus se voi korvata WHERE-ehdon.

Lisäksi, jos tarvitsee käsitellä ei koko taulua, vaan vain suodatettua osaa, sisäinen alikysely FROM-osiossa voi olla erittäin kätevä.

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Tehtävänäsi on hakea keskimääräinen budjetti (budget-sarake) kaikille johdon osastoille department-taulusta. Käytä sisäkkäistä alikyselyä FROM-osiossa suodattaaksesi vain johdon tyyppiset osastot. Käytä myös aliasta manager_departments tälle taululle, jotta tehtävä tarkistetaan oikein.

Vastauksessa tulee olla vain yksi sarake, average_budget. Tämä on aliaksena aggregaattifunktiolle AVG().

Tämän tehtävän voisi ratkaista myös käyttämällä WHERE-ehtoa, mutta tässä käytetään sisäkkäistä kyselyä harjoittelun vuoksi. Tämä syntaksi on hyödyllinen monimutkaisempien ongelmien ratkaisemisessa tulevaisuudessa.

Lyhyet ohjeet

  • Hae budget-sarakkeen keskiarvo.
  • Anna tälle sarakkeelle alias average_budget.
  • Kirjoita sisäkkäinen kysely FROM-osioon.
  • Sisäkkäisessä kyselyssä valitse kaikki sarakkeet department-taulusta.
  • Sisäkkäisessä kyselyssä käytä WHERE-ehtoa: type = 'manager'.
  • Anna sisäkkäiselle kyselylle alias manager_departments.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 3
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt