Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Nästlade Frågor | Nästlade Underfrågor
Intermediär SQL
course content

Kursinnehåll

Intermediär SQL

Intermediär SQL

1. Gruppering
2. Nästlade Underfrågor
3. Sammanfoga Tabeller
4. DDL och DML i SQL

book
Nästlade Frågor

Skoladministrationen är nöjd med våra senaste prestationer och är ivrig att gå vidare.

När de börjar sitt sommarlov har vi chansen att utforska nya metoder och förbättra våra SQL-färdigheter.

Vårt fokus kommer att ligga på nästlade frågor, ett nyckelbegrepp i SQL.

Låt oss titta på ett exempel från vår företagsdatabas. När företaget växer har vi lagt till en ny department-tabell. Detta förändrar hur vår databas fungerar.

Låt oss kolla in den nya tabellens struktur för att se dess roll i vår databas:

Den nya tabellen innehåller avdelningar, deras typer och budgetar. Och i employee-tabellen, som du kanske minns, finns det information om vilken avdelning varje anställd tillhör.

Låt oss överväga ett exempel där vi använder nästlade frågor för att hämta de anställda som arbetar i avdelningar med budgetar på $500,000 eller mindre:

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

Vi använder en WHERE-klausul för att specificera att avdelningsnamnet ska finnas i tabellen vi hämtar med den inre frågan.

Låt oss bryta ner denna fråga i två separata för att se hur den fungerar. Först, låt oss hämta namnen på avdelningar med budgetar på $500,000 eller mindre (vår inre fråga):

123
SELECT name FROM department WHERE budget <= 500000
copy

Nu, med tanke på det erhållna resultatet, låt oss skriva den andra frågan för att hämta information om de anställda från dessa avdelningar:

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

Resultatet av denna fråga kommer att vara samma som den första frågan.

Här är en steg-för-steg-genomgång:

  1. Den inre frågan hämtar names på de avdelningar vi behöver;

  2. WHERE-klauselet kontrollerar om dessa avdelningar finns i tabellen från den inre frågan;

  3. Vi får det resultat vi vill ha.

Här är den grundläggande syntaxen för en inre fråga:

sql

När du använder nästlade frågor, tänk på dessa viktiga punkter:

  1. Enkelt resultat i underfråga: säkerställ att den nästlade frågan returnerar endast en kolumn. Om den används i en jämförelse, bör den helst returnera ett enda värde. Detta är avgörande för operatorer som =, >, <, >=, <=, <>;

  2. Datatyper: datatypen för den returnerade kolumnen bör matcha kolumnen du jämför den med, för att undvika fel;

  3. Optimering: nästlade frågor kan vara långsamma, särskilt om de körs för varje rad i huvudfrågan;

  4. Använda IN-operatorn: nästlade frågor använder ofta IN-operatorn för att kontrollera värden i en delmängd. Du kan också använda jämförelseoperatorer för mer komplexa villkor.

1. Vad är en nästlad fråga i SQL?

2. Vilken SQL-operator används vanligtvis med nästlade frågor för att kontrollera värden i en delmängd?

3. Varför är det viktigt att datatypen för kolumnen som returneras av en nästlad fråga matchar kolumnen den jämförs med?

question mark

Vad är en nästlad fråga i SQL?

Select the correct answer

question mark

Vilken SQL-operator används vanligtvis med nästlade frågor för att kontrollera värden i en delmängd?

Select the correct answer

question mark

Varför är det viktigt att datatypen för kolumnen som returneras av en nästlad fråga matchar kolumnen den jämförs med?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 1

Fråga AI

expand
ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

course content

Kursinnehåll

Intermediär SQL

Intermediär SQL

1. Gruppering
2. Nästlade Underfrågor
3. Sammanfoga Tabeller
4. DDL och DML i SQL

book
Nästlade Frågor

Skoladministrationen är nöjd med våra senaste prestationer och är ivrig att gå vidare.

När de börjar sitt sommarlov har vi chansen att utforska nya metoder och förbättra våra SQL-färdigheter.

Vårt fokus kommer att ligga på nästlade frågor, ett nyckelbegrepp i SQL.

Låt oss titta på ett exempel från vår företagsdatabas. När företaget växer har vi lagt till en ny department-tabell. Detta förändrar hur vår databas fungerar.

Låt oss kolla in den nya tabellens struktur för att se dess roll i vår databas:

Den nya tabellen innehåller avdelningar, deras typer och budgetar. Och i employee-tabellen, som du kanske minns, finns det information om vilken avdelning varje anställd tillhör.

Låt oss överväga ett exempel där vi använder nästlade frågor för att hämta de anställda som arbetar i avdelningar med budgetar på $500,000 eller mindre:

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

Vi använder en WHERE-klausul för att specificera att avdelningsnamnet ska finnas i tabellen vi hämtar med den inre frågan.

Låt oss bryta ner denna fråga i två separata för att se hur den fungerar. Först, låt oss hämta namnen på avdelningar med budgetar på $500,000 eller mindre (vår inre fråga):

123
SELECT name FROM department WHERE budget <= 500000
copy

Nu, med tanke på det erhållna resultatet, låt oss skriva den andra frågan för att hämta information om de anställda från dessa avdelningar:

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

Resultatet av denna fråga kommer att vara samma som den första frågan.

Här är en steg-för-steg-genomgång:

  1. Den inre frågan hämtar names på de avdelningar vi behöver;

  2. WHERE-klauselet kontrollerar om dessa avdelningar finns i tabellen från den inre frågan;

  3. Vi får det resultat vi vill ha.

Här är den grundläggande syntaxen för en inre fråga:

sql

När du använder nästlade frågor, tänk på dessa viktiga punkter:

  1. Enkelt resultat i underfråga: säkerställ att den nästlade frågan returnerar endast en kolumn. Om den används i en jämförelse, bör den helst returnera ett enda värde. Detta är avgörande för operatorer som =, >, <, >=, <=, <>;

  2. Datatyper: datatypen för den returnerade kolumnen bör matcha kolumnen du jämför den med, för att undvika fel;

  3. Optimering: nästlade frågor kan vara långsamma, särskilt om de körs för varje rad i huvudfrågan;

  4. Använda IN-operatorn: nästlade frågor använder ofta IN-operatorn för att kontrollera värden i en delmängd. Du kan också använda jämförelseoperatorer för mer komplexa villkor.

1. Vad är en nästlad fråga i SQL?

2. Vilken SQL-operator används vanligtvis med nästlade frågor för att kontrollera värden i en delmängd?

3. Varför är det viktigt att datatypen för kolumnen som returneras av en nästlad fråga matchar kolumnen den jämförs med?

question mark

Vad är en nästlad fråga i SQL?

Select the correct answer

question mark

Vilken SQL-operator används vanligtvis med nästlade frågor för att kontrollera värden i en delmängd?

Select the correct answer

question mark

Varför är det viktigt att datatypen för kolumnen som returneras av en nästlad fråga matchar kolumnen den jämförs med?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 1
Vi beklagar att något gick fel. Vad hände?
some-alt