Gefilterde gegroepeerde data

Gevorderde SQL-query’s met AI

Jasmin Ludolf

Senior Data Science Content Developer

WHERE of HAVING

Welke talen hebben meer dan 20 films?

  • Taal aantal: geaggregeerd en gegroepeerd

 

WHERE

  • Individuele rijen
  • Welke individuele films voldoen aan deze voorwaarde?

$$

$$

$$

HAVING

  • Gegroepeerde resultaten
  • Welke groepen voldoen aan deze voorwaarde?
Gevorderde SQL-query’s met AI

Gefilterde gegroepeerde data

Opdracht: Welke talen hebben meer dan 20 films?

SELECT language, COUNT(*) AS lang_count
FROM films
GROUP BY language
HAVING COUNT(*) > 20;
|language|
|--------|
|Mandarin|
|Spanish |
|French  |
|Hindi   |
|English |

$$

  • Filters na:
    • Groepering
    • Aggregaties
    • Wanneer tellingen beschikbaar zijn
Gevorderde SQL-query’s met AI

Vragen om groepsfilters

Opdracht: Filmtitels en budgetten met een budget boven 5 miljoen

SELECT title, budget
FROM films
WHERE budget > 5000000;
|title          |budget |
|---------------|-------|
|Metropolis     |6000000|
|Duel in the Sun|8000000|
|Quo Vadis      |7623000|
|West Side Story|6000000|
...

Opdracht: Talen en budget met afgerond gemiddeld budget boven 5 miljoen

SELECT language, ROUND(AVG(budget)) AS avg_budget
FROM films
GROUP BY language
HAVING ROUND(AVG(budget)) > 5000000;
|language|avg_budget|
|--------|----------|
|Danish  |16700000  |
|None    |8250000   |
|Tamil   |150000000 |
...
Gevorderde SQL-query’s met AI

Filters combineren

Opdracht: Toon talen met meer dan 5 films vanaf 2000, waar de gemiddelde duur boven 80 ligt

Gevorderde SQL-query’s met AI

Filters combineren

Opdracht: Toon talen met meer dan 5 films vanaf 2000, waar de gemiddelde duur boven 80 ligt

SELECT language, COUNT(*) AS film_count, ROUND(AVG(duration)) AS average_duration
FROM films

WHERE release_year >= 2000
GROUP BY language
Gevorderde SQL-query’s met AI

Filters combineren

Opdracht: Toon talen met meer dan 5 films vanaf 2000, waar de gemiddelde duur boven 80 ligt

SELECT language, COUNT(*) AS film_count, ROUND(AVG(duration)) AS average_duration
FROM films
WHERE release_year >= 2000
GROUP BY language

Gevorderde SQL-query’s met AI

Filters combineren

Opdracht: Toon talen met meer dan 5 films vanaf 2000, waar de gemiddelde duur boven 80 ligt

SELECT language, COUNT(*) AS film_count, ROUND(AVG(duration)) AS average_duration
FROM films
WHERE release_year >= 2000
GROUP BY language

HAVING COUNT(*) > 5 AND ROUND(AVG(duration)) > 80;
|language|film_count|average_duration|
|--------|----------|----------------|
|Mandarin|26        |112             |
|Japanese|10        |114             |
|Spanish |37        |107             |
...
Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROM

Een assemblagelijn

Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROMWHERE

Een assemblagelijn

Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROMWHEREGROUP BY (en aggregatie) ➝

Een assemblagelijn

Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROMWHEREGROUP BY (en aggregatie) ➝ HAVING

Een assemblagelijn

Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROMWHEREGROUP BY (en aggregatie) ➝ HAVINGSELECT

Een assemblagelijn

Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROMWHEREGROUP BY (en aggregatie) ➝ HAVINGSELECTORDER BY

Een assemblagelijn

Gevorderde SQL-query’s met AI

Volgorde van bewerkingen

$$

FROMWHEREGROUP BY (en aggregatie) ➝ HAVINGSELECTORDER BYLIMIT

Een assemblagelijn

Gevorderde SQL-query’s met AI

Filteropdrachten

Beide: Films vanaf 2000 waar de gemiddelde duur boven 80 ligt

WHERE: Individuele records

  • Filmtitels uitgebracht na 2024
  • Budgetten boven 5 miljoen

HAVING: Vermeldt aggregaat

  • Talen met gemiddeld budget boven 10000
  • Aantal films groter dan 5

Pen op papier

Gevorderde SQL-query’s met AI

Iteratief vragen

$$

1) Begin klein

2) Controleer de resultaten

3) Vraag opnieuw om meer details toe te voegen

4) Herhaal!

3D illustratie van een spraakballon, een met AI en een met ellipsis

Gevorderde SQL-query’s met AI

Tijd om te oefenen!

Gevorderde SQL-query’s met AI

Preparing Video For Download...