Ga naar inhoud

Header

Aggregeren - Opdrachten

1. Aantal acteurs naar geslacht

Maak de volgende query af om het aantal acteur naar geslacht te verkrijgen.

  • Haal data op uit tabel actors.
  • Groepeer op kolom gender met GROUP BY.
  • Selecteer kolom gender, en tel het aantal rijen met functie COUNT().
SELECT
  gender,
  COUNT(*)
FROM
  actors
GROUP BY
  gender;
gender count
M 1464
F 443
Columns: 2
Rows: 2




2. Gemiddeld aantal films

Maak de volgende query af om ook het gemiddelde aantal films te berekenen van acteurs van een bepaald geslacht.

  • Hergebruik je code uit de vorige opdracht.
  • Haal data op uit tabel actors.
  • Groepeer op kolom gender met GROUP BY.
  • Selecteer/bereken kolommen:
    • Geslacht: gender
    • Tel het aantal rijen met functie COUNT().
    • Bereken het gemiddelde aantal flms met AVG().
      • Geef deze kolom met AS de naam film_count_avg.
SELECT
  gender,
  COUNT(*),
  AVG(film_count) AS film_count_avg
FROM
  actors
GROUP BY
  gender;
gender count film_count_avg
M 1464 1.0484972677595628
F 443 1.0248306997742664
Columns: 3
Rows: 2




3. Grootste aantal films

Maak de volgende query af om ook het grootste aantal films te berekenen van een acteur van een bepaald geslacht.

  • Hergebruik je code uit de vorige opdracht.
  • Haal data op uit tabel actors.
  • Groepeer op kolom gender met GROUP BY.
  • Selecteer/bereken kolommen:
    • Geslacht: gender
    • Tel het aantal rijen met functie COUNT().
    • Bereken het gemiddelde aantal films met AVG().
      • Geef deze kolom met AS de naam film_count_avg.
    • Vind het grootste aantal films met MAX().
      • Geef deze kolom met AS de naam film_count_max.
SELECT
  gender,
  COUNT(*),
  AVG(film_count) AS film_count_avg,
  MAX(film_count) AS film_count_max
FROM
  actors
GROUP BY
  gender;
gender count film_count_avg film_count_max
M 1464 1.0484972677595628 9
F 443 1.0248306997742664 3
Columns: 4
Rows: 2




4. (Extra) Lengte van namen

Maak de volgende query af om ook de gemiddelde lengte (aantal tekens) van voornamen van acteurs per geslacht te berekenen.

  • Hergebruik je code uit de vorige opdracht.
  • Bereken de gemiddelde lengte van voornamen, kolom first_name.
    • Gebruik de AVG() en LENGTH() functies.
    • Noem de nieuwe kolom first_name_avg.
  • Welk geslacht heeft gemiddeld de langste voornaam?
SELECT
  gender,
  COUNT(*),
  AVG(film_count) AS film_count_avg,
  MAX(film_count) AS film_count_max,
  AVG(LENGTH(first_name)) AS first_name_avg
FROM
  actors
GROUP BY
  gender;
gender count film_count_avg film_count_max first_name_avg
M 1464 1.0484972677595628 9 6.4699453551912568
F 443 1.0248306997742664 3 6.8442437923250564
Columns: 5
Rows: 2




5. (Extra) Aantal acteurs met naam van bepaalde lengte

Maak de volgende query af om:

  • Te groeperen op de lengte van voornamen van acteurs.
  • Als kolommen te selecteren/berekenen:
    • Lengte (aantal karakters) van voornamen van acteurs.
    • Het aantal rijen (aantal acteurs met een voornaam van een bepaalde lengte).
  • Sorteer op de lengte (aantal karakters) van voornamen van acteurs.
SELECT
  LENGTH(first_name) as first_name_length,
  COUNT(*)
FROM
  actors
GROUP BY
  LENGTH(first_name)
ORDER BY
  first_name_length;
first_name_length count
2 12
3 146
4 296
5 365
... ...
Columns: 2
Rows: 19