Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Twee Tabellen Joinen | Tabellen Samenvoegen
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Intermediate SQL

bookTwee Tabellen Joinen

We hebben de aandacht getrokken van een bedrijf dat een kleine online winkel bezit. Zij hebben 2 tabellen die met elkaar verbonden zijn. De eerste tabel bevat informatie over de producten die in de online winkel worden verkocht.

Dit is hoe de product tabel eruitziet:

De tweede tabel bevat productcategorieën op de website, samen met een korte beschrijving van elke categorie.

Dit is hoe de category tabel eruitziet:

Onze eerste taak is om deze twee tabellen te koppelen om te achterhalen hoeveel producten er in elke categorie zijn. Hiervoor gebruiken we een JOIN-statement.

Voordat we aan de slag gaan, bekijken we eerst wat een JOIN-statement is en hoe het werkt.

Note
Definitie

JOIN in SQL is een bewerking die rijen uit twee of meer tabellen combineert op basis van een gerelateerde kolom tussen deze tabellen. Met JOIN kan data uit meerdere tabellen in één query worden verkregen, wat de analyse en verwerking van gerelateerde data vereenvoudigt.

Om twee tabellen te koppelen, moeten ze een gemeenschappelijke kolom hebben. Bekijk hoe JOIN werkt met de tabellen employees en department. Hun gemeenschappelijke kolom is employees.department en departments.name.

Note
Opmerking

Bij het schrijven van kolommen uit deze tabellen, begin met de tabelnaam, voeg een punt toe en daarna de kolomnaam. Dit houdt de code overzichtelijk, vooral wanneer tabellen kolommen met dezelfde naam bevatten. Hiermee geef je in SQL precies aan welke tabel en kolom bedoeld wordt.

Hier is de taak om het totale salaris op te halen voor werknemers in elk afdelingstype (tech/non-tech).

De query om deze taak uit te voeren ziet er als volgt uit:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Laten we uitleggen hoe we JOIN in onze query hebben gebruikt:

  1. In het SELECT-gedeelte geven we de kolommen op die we uit beide tabellen willen halen, waarbij we de tabelnaam vermelden voor duidelijkheid;
  2. In het JOIN-gedeelte specificeren we de tabel om te joinen en de gemeenschappelijke kolom die ze verbindt. Hier zijn dat employees.department en department.name;
  3. Vervolgens groeperen we de gegevens op type om het totale salaris te berekenen met de SUM()-functie.

Als dit ingewikkeld lijkt, volgt hier een eenvoudige syntaxis voor het gebruik van JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Note
Opmerking

In tegenstelling tot de UNION-clausule stelt de JOIN-instructie ons in staat om volledige tabellen te combineren, niet alleen de kolommen die ze gemeen hebben. Bovendien is er bij JOIN geen noodzaak voor subquery's zoals bij UNION.

Taak

Swipe to start coding

Je moet de twee tabellen category en product samenvoegen. De gemeenschappelijke kolommen voor deze twee tabellen zijn product.category_id en category.id.

Je opdracht is om het totale aantal producten in elke categorie te vinden. Hiervoor moet je de som berekenen van de kolom product.amount.

Gebruik het alias total_amount voor deze kolom. Aan het einde van je query sorteer je het resultaat op de kolom total_amount in oplopende volgorde.

In het antwoord moeten 2 kolommen staan: category.name en total.amount.

Korte instructies

  • Haal de kolom category.name en de som van de kolom product.amount op uit de tabel product.
  • Ken het alias total_amount toe aan de tweede kolom.
  • Voeg de tabel category samen met een JOIN-statement.
  • Koppel de tabellen op de gemeenschappelijke kolom product.category_id = category.id.
  • Groepeer de resultaten op category.name.
  • Sorteer de resultaten op total_amount.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 1
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Suggested prompts:

Can you explain how the JOIN would work for the product and category tables?

What type of JOIN should I use for this scenario?

Can you show an example query joining the product and category tables?

close

bookTwee Tabellen Joinen

Veeg om het menu te tonen

We hebben de aandacht getrokken van een bedrijf dat een kleine online winkel bezit. Zij hebben 2 tabellen die met elkaar verbonden zijn. De eerste tabel bevat informatie over de producten die in de online winkel worden verkocht.

Dit is hoe de product tabel eruitziet:

De tweede tabel bevat productcategorieën op de website, samen met een korte beschrijving van elke categorie.

Dit is hoe de category tabel eruitziet:

Onze eerste taak is om deze twee tabellen te koppelen om te achterhalen hoeveel producten er in elke categorie zijn. Hiervoor gebruiken we een JOIN-statement.

Voordat we aan de slag gaan, bekijken we eerst wat een JOIN-statement is en hoe het werkt.

Note
Definitie

JOIN in SQL is een bewerking die rijen uit twee of meer tabellen combineert op basis van een gerelateerde kolom tussen deze tabellen. Met JOIN kan data uit meerdere tabellen in één query worden verkregen, wat de analyse en verwerking van gerelateerde data vereenvoudigt.

Om twee tabellen te koppelen, moeten ze een gemeenschappelijke kolom hebben. Bekijk hoe JOIN werkt met de tabellen employees en department. Hun gemeenschappelijke kolom is employees.department en departments.name.

Note
Opmerking

Bij het schrijven van kolommen uit deze tabellen, begin met de tabelnaam, voeg een punt toe en daarna de kolomnaam. Dit houdt de code overzichtelijk, vooral wanneer tabellen kolommen met dezelfde naam bevatten. Hiermee geef je in SQL precies aan welke tabel en kolom bedoeld wordt.

Hier is de taak om het totale salaris op te halen voor werknemers in elk afdelingstype (tech/non-tech).

De query om deze taak uit te voeren ziet er als volgt uit:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Laten we uitleggen hoe we JOIN in onze query hebben gebruikt:

  1. In het SELECT-gedeelte geven we de kolommen op die we uit beide tabellen willen halen, waarbij we de tabelnaam vermelden voor duidelijkheid;
  2. In het JOIN-gedeelte specificeren we de tabel om te joinen en de gemeenschappelijke kolom die ze verbindt. Hier zijn dat employees.department en department.name;
  3. Vervolgens groeperen we de gegevens op type om het totale salaris te berekenen met de SUM()-functie.

Als dit ingewikkeld lijkt, volgt hier een eenvoudige syntaxis voor het gebruik van JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Note
Opmerking

In tegenstelling tot de UNION-clausule stelt de JOIN-instructie ons in staat om volledige tabellen te combineren, niet alleen de kolommen die ze gemeen hebben. Bovendien is er bij JOIN geen noodzaak voor subquery's zoals bij UNION.

Taak

Swipe to start coding

Je moet de twee tabellen category en product samenvoegen. De gemeenschappelijke kolommen voor deze twee tabellen zijn product.category_id en category.id.

Je opdracht is om het totale aantal producten in elke categorie te vinden. Hiervoor moet je de som berekenen van de kolom product.amount.

Gebruik het alias total_amount voor deze kolom. Aan het einde van je query sorteer je het resultaat op de kolom total_amount in oplopende volgorde.

In het antwoord moeten 2 kolommen staan: category.name en total.amount.

Korte instructies

  • Haal de kolom category.name en de som van de kolom product.amount op uit de tabel product.
  • Ken het alias total_amount toe aan de tweede kolom.
  • Voeg de tabel category samen met een JOIN-statement.
  • Koppel de tabellen op de gemeenschappelijke kolom product.category_id = category.id.
  • Groepeer de resultaten op category.name.
  • Sorteer de resultaten op total_amount.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 1
single

single

some-alt