Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Sisäkkäisten Alikyselyjen Käyttö From-Osiossa | Sisäkkäiset Alikyselyt
SQL Jatkotaso

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

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-taulun rivejä, joiden salary on tietyn arvon yläpuolella. Tällä kertaa käytetään sisäistä kyselyä WHERE-ehdon sijaan:

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ä tietoa.

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äkkäinen alikysely FROM-osiossa voi olla erittäin kätevä.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 3
single

single

Haaste: 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-taulun rivejä, joiden salary on tietyn arvon yläpuolella. Tällä kertaa käytetään sisäistä kyselyä WHERE-ehdon sijaan:

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ä tietoa.

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äkkä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 johtotason osastoille department-taulusta. Käytä sisäkkäistä alikyselyä FROM-osassa suodattaaksesi vain johtotyyppiset 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, mikä on hyödyllistä monimutkaisempien ongelmien ratkaisemisessa tulevaisuudessa.

Lyhyet ohjeet

  • Hae budget-sarakkeen keskiarvo.
  • Anna tälle sarakkeelle alias average_budget.
  • Kirjoita FROM-lauseeseen sisäkkäinen kysely.
  • Sisäkkäisessä kyselyssä valitse kaikki sarakkeet department-taulusta.
  • Sisäkkäisessä kyselyssä käytä WHERE-ehtoa, jossa ehto on 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