Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Nestede Spørringer | Nestede Underforespørsler
Videregående SQL
course content

Kursinnhold

Videregående SQL

Videregående SQL

1. Grouping
2. Nestede Underforespørsler
3. Slå Sammen Tabeller
4. DDL og DML i SQL

book
Nestede Spørringer

Skoleadministrasjonen er fornøyd med våre nylige prestasjoner og er ivrige etter å gå videre.

Når de begynner sin sommerferie, har vi sjansen til å utforske nye metoder og forbedre våre SQL-ferdigheter.

Vårt fokus vil være på nestede spørringer, et nøkkelkonsept i SQL.

La oss se på et eksempel fra vår bedriftsdatabase. Etter hvert som selskapet vokser, har vi lagt til en ny department-tabell. Dette endrer hvordan databasen vår fungerer.

La oss sjekke ut den nye tabellens struktur for å se dens rolle i databasen vår:

Den nye tabellen inneholder avdelinger, deres typer, og budsjetter. Og i employee-tabellen, som du kanskje husker, finnes det informasjon om avdelingen hver ansatt tilhører.

La oss vurdere et eksempel der vi bruker nestede spørringer for å hente de ansatte som jobber i avdelinger med budsjetter på $500,000 eller mindre:

1234567
SELECT * FROM employees WHERE department IN ( SELECT name FROM department WHERE budget <= 500000 )
copy

Vi bruker en WHERE-klausul for å spesifisere at avdelingsnavnet skal være til stede i tabellen vi henter med den indre spørringen.

La oss dele opp denne spørringen i to separate for å se hvordan den fungerer. Først, la oss hente navnene på avdelinger med budsjetter på $500,000 eller mindre (vår indre spørring):

123
SELECT name FROM department WHERE budget <= 500000
copy

Nå, med tanke på det oppnådde resultatet, la oss skrive den andre spørringen for å hente informasjon om de ansatte fra disse avdelingene:

12345
SELECT * FROM employees WHERE department IN ( 'Marketing', 'Human Resources', 'Finance', 'Customer Service', 'Legal' )
copy

Resultatet av denne spørringen vil være det samme som den første spørringen.

Her er en trinnvis gjennomgang:

  1. Den indre spørringen henter names på avdelingene vi trenger;

  2. WHERE-klausulen sjekker om disse avdelingene er i tabellen fra den indre spørringen;

  3. Vi får resultatet vi ønsker.

Her er den grunnleggende syntaksen for en indre spørring:

sql

Når du bruker nestede spørringer, husk disse viktige punktene:

  1. Enkeltresultat i underordnet spørring: sørg for at den nestede spørringen returnerer kun én kolonne. Hvis den brukes i en sammenligning, bør den ideelt sett returnere en enkelt verdi. Dette er avgjørende for operatorer som =, >, <, >=, <=, <>;

  2. Datatyper: datatypen til den returnerte kolonnen bør samsvare med kolonnen du sammenligner den med, for å unngå feil;

  3. Optimalisering: nestede spørringer kan være trege, spesielt hvis de kjøres for hver rad i hovedspørringen;

  4. Bruk av IN-operatoren: nestede spørringer bruker ofte IN-operatoren for å sjekke verdier i et delsett. Du kan også bruke sammenligningsoperatorer for mer komplekse betingelser.

1. Hva er en nestet spørring i SQL?

2. Hvilken SQL-operator brukes ofte med nestede spørringer for å sjekke verdier i et delsett?

3. Hvorfor er det viktig at datatypen til kolonnen som returneres av en nestet spørring samsvarer med kolonnen den sammenlignes med?

question mark

Hva er en nestet spørring i SQL?

Select the correct answer

question mark

Hvilken SQL-operator brukes ofte med nestede spørringer for å sjekke verdier i et delsett?

Select the correct answer

question mark

Hvorfor er det viktig at datatypen til kolonnen som returneres av en nestet spørring samsvarer med kolonnen den sammenlignes med?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 1

Spør AI

expand
ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

course content

Kursinnhold

Videregående SQL

Videregående SQL

1. Grouping
2. Nestede Underforespørsler
3. Slå Sammen Tabeller
4. DDL og DML i SQL

book
Nestede Spørringer

Skoleadministrasjonen er fornøyd med våre nylige prestasjoner og er ivrige etter å gå videre.

Når de begynner sin sommerferie, har vi sjansen til å utforske nye metoder og forbedre våre SQL-ferdigheter.

Vårt fokus vil være på nestede spørringer, et nøkkelkonsept i SQL.

La oss se på et eksempel fra vår bedriftsdatabase. Etter hvert som selskapet vokser, har vi lagt til en ny department-tabell. Dette endrer hvordan databasen vår fungerer.

La oss sjekke ut den nye tabellens struktur for å se dens rolle i databasen vår:

Den nye tabellen inneholder avdelinger, deres typer, og budsjetter. Og i employee-tabellen, som du kanskje husker, finnes det informasjon om avdelingen hver ansatt tilhører.

La oss vurdere et eksempel der vi bruker nestede spørringer for å hente de ansatte som jobber i avdelinger med budsjetter på $500,000 eller mindre:

1234567
SELECT * FROM employees WHERE department IN ( SELECT name FROM department WHERE budget <= 500000 )
copy

Vi bruker en WHERE-klausul for å spesifisere at avdelingsnavnet skal være til stede i tabellen vi henter med den indre spørringen.

La oss dele opp denne spørringen i to separate for å se hvordan den fungerer. Først, la oss hente navnene på avdelinger med budsjetter på $500,000 eller mindre (vår indre spørring):

123
SELECT name FROM department WHERE budget <= 500000
copy

Nå, med tanke på det oppnådde resultatet, la oss skrive den andre spørringen for å hente informasjon om de ansatte fra disse avdelingene:

12345
SELECT * FROM employees WHERE department IN ( 'Marketing', 'Human Resources', 'Finance', 'Customer Service', 'Legal' )
copy

Resultatet av denne spørringen vil være det samme som den første spørringen.

Her er en trinnvis gjennomgang:

  1. Den indre spørringen henter names på avdelingene vi trenger;

  2. WHERE-klausulen sjekker om disse avdelingene er i tabellen fra den indre spørringen;

  3. Vi får resultatet vi ønsker.

Her er den grunnleggende syntaksen for en indre spørring:

sql

Når du bruker nestede spørringer, husk disse viktige punktene:

  1. Enkeltresultat i underordnet spørring: sørg for at den nestede spørringen returnerer kun én kolonne. Hvis den brukes i en sammenligning, bør den ideelt sett returnere en enkelt verdi. Dette er avgjørende for operatorer som =, >, <, >=, <=, <>;

  2. Datatyper: datatypen til den returnerte kolonnen bør samsvare med kolonnen du sammenligner den med, for å unngå feil;

  3. Optimalisering: nestede spørringer kan være trege, spesielt hvis de kjøres for hver rad i hovedspørringen;

  4. Bruk av IN-operatoren: nestede spørringer bruker ofte IN-operatoren for å sjekke verdier i et delsett. Du kan også bruke sammenligningsoperatorer for mer komplekse betingelser.

1. Hva er en nestet spørring i SQL?

2. Hvilken SQL-operator brukes ofte med nestede spørringer for å sjekke verdier i et delsett?

3. Hvorfor er det viktig at datatypen til kolonnen som returneres av en nestet spørring samsvarer med kolonnen den sammenlignes med?

question mark

Hva er en nestet spørring i SQL?

Select the correct answer

question mark

Hvilken SQL-operator brukes ofte med nestede spørringer for å sjekke verdier i et delsett?

Select the correct answer

question mark

Hvorfor er det viktig at datatypen til kolonnen som returneres av en nestet spørring samsvarer med kolonnen den sammenlignes med?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 1
Vi beklager at noe gikk galt. Hva skjedde?
some-alt