Twee Tabellen Samenvoegen
We hebben de aandacht getrokken van een bedrijf dat een kleine online winkel bezit. Zij beschikken over 2 tabellen die met elkaar verbonden zijn. De eerste tabel bevat informatie over de producten die in de online winkel worden verkocht.
Zo ziet de product
tabel eruit:
De tweede tabel bevat productcategorieën op de website, samen met een korte beschrijving van elke categorie.
Zo ziet de category
tabel eruit:
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.
Om twee tabellen te koppelen, moeten ze een gemeenschappelijke kolom hebben. Laten we bekijken hoe JOIN
werkt met de tabellen employees
en department
. Hun gemeenschappelijke kolom is employees.department
en departments.name
.
Opmerking
Wanneer je kolommen uit deze tabellen schrijft, begin dan met de tabelnaam, voeg een punt toe en daarna de kolomnaam. Dit houdt de code overzichtelijk, vooral wanneer tabellen kolommen met dezelfde naam hebben. Het geeft SQL precies aan welke tabel en kolom je bedoelt.
Hier volgt 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:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Laten we uiteenzetten hoe we JOIN
in onze query hebben gebruikt:
- In het
SELECT
-gedeelte geven we de kolommen op die we uit beide tabellen willen halen, waarbij we voor de duidelijkheid de tabelnaam vermelden; - In het
JOIN
-gedeelte specificeren we de te joinen tabel en de gemeenschappelijke kolom die ze verbindt. Hier zijn datemployees.department
endepartment.name
; - Vervolgens groeperen we de gegevens op
type
om het totale salaris te berekenen met de functieSUM()
.
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
Opmerking
In tegenstelling tot de
UNION
-clausule stelt deJOIN
-instructie ons in staat om volledige tabellen te combineren, niet alleen de kolommen die ze delen. Bovendien zijn metJOIN
geen subquery's nodig, zoals bijUNION
.
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 resultaat moeten 2 kolommen staan: category.name
en total.amount
.
Korte instructies
- Haal de kolom
category.name
en de som van de kolomproduct.amount
op uit de tabelproduct
. - Ken het alias
total_amount
toe aan de tweede kolom. - Voeg de tabel
category
samen met eenJOIN
-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
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Awesome!
Completion rate improved to 4
Twee Tabellen Samenvoegen
Veeg om het menu te tonen
We hebben de aandacht getrokken van een bedrijf dat een kleine online winkel bezit. Zij beschikken over 2 tabellen die met elkaar verbonden zijn. De eerste tabel bevat informatie over de producten die in de online winkel worden verkocht.
Zo ziet de product
tabel eruit:
De tweede tabel bevat productcategorieën op de website, samen met een korte beschrijving van elke categorie.
Zo ziet de category
tabel eruit:
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.
Om twee tabellen te koppelen, moeten ze een gemeenschappelijke kolom hebben. Laten we bekijken hoe JOIN
werkt met de tabellen employees
en department
. Hun gemeenschappelijke kolom is employees.department
en departments.name
.
Opmerking
Wanneer je kolommen uit deze tabellen schrijft, begin dan met de tabelnaam, voeg een punt toe en daarna de kolomnaam. Dit houdt de code overzichtelijk, vooral wanneer tabellen kolommen met dezelfde naam hebben. Het geeft SQL precies aan welke tabel en kolom je bedoelt.
Hier volgt 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:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Laten we uiteenzetten hoe we JOIN
in onze query hebben gebruikt:
- In het
SELECT
-gedeelte geven we de kolommen op die we uit beide tabellen willen halen, waarbij we voor de duidelijkheid de tabelnaam vermelden; - In het
JOIN
-gedeelte specificeren we de te joinen tabel en de gemeenschappelijke kolom die ze verbindt. Hier zijn datemployees.department
endepartment.name
; - Vervolgens groeperen we de gegevens op
type
om het totale salaris te berekenen met de functieSUM()
.
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
Opmerking
In tegenstelling tot de
UNION
-clausule stelt deJOIN
-instructie ons in staat om volledige tabellen te combineren, niet alleen de kolommen die ze delen. Bovendien zijn metJOIN
geen subquery's nodig, zoals bijUNION
.
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 resultaat moeten 2 kolommen staan: category.name
en total.amount
.
Korte instructies
- Haal de kolom
category.name
en de som van de kolomproduct.amount
op uit de tabelproduct
. - Ken het alias
total_amount
toe aan de tweede kolom. - Voeg de tabel
category
samen met eenJOIN
-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
Bedankt voor je feedback!
Awesome!
Completion rate improved to 4single