Indholdsfortegnelse
SQL Øvelser – JOINs (MariaDB)
Formålet med disse øvelser er at lære at anvende JOINs i SQL ved brug af Chinook-datasættet.
I øvelserne arbejdes der med følgende JOIN-typer:
- INNER JOIN
- LEFT JOIN
- RIGHT JOIN
- CROSS JOIN
- SELF JOIN
Kun SELECT-forespørgsler må anvendes.
- OBS! OBS! - Husk at notere jeres løsnings SQL queries i et dokument.
Øvelse 1 – INNER JOIN
Opgave: Vis alle albums sammen med navnet på den kunstner, der har udgivet albummet.
Krav:
- Albumtitel
- Kunstnernavn
- Brug
INNER JOIN
Øvelse 2 – INNER JOIN med filtrering
Opgave: Vis alle tracks og deres albumtitler for albummet *Let There Be Rock*.
Krav:
- Track-navn
- Albumtitel
- Brug
INNER JOIN - Filtrer på albumtitel
Øvelse 3 – Flere INNER JOINs
Opgave: Vis alle tracks sammen med deres genre og medietype.
Krav:
- Track-navn
- Genre-navn
- MediaType-navn
- Brug mindst to
INNER JOINs - Sortér efter track-navn
Øvelse 4 – INNER JOIN på faktatabel
Opgave: Vis alle fakturalinjer med tilhørende track-information.
Krav:
- InvoiceId
- Track-navn
- Enhedspris
- Join
InvoiceLineogTrackmedINNER JOIN
Øvelse 5 – LEFT JOIN (manglende relationer)
Opgave: Vis alle kunder og deres fakturaer.
Krav:
- Kundenavn
- InvoiceId
- Brug
LEFT JOIN - Kunder uden fakturaer skal også vises. (ups, ..alle kunder har en ordre. Opret en ny kunde uden ordre)
Øvelse 6 – RIGHT JOIN
Opgave: Vis alle fakturaer og tilhørende kunder.
Krav:
- InvoiceId
- Kundenavn
- Brug
RIGHT JOIN - Overvej hvordan samme resultat kan opnås med
LEFT JOIN
Øvelse 7 – CROSS JOIN
Opgave: Vis alle mulige kombinationer af genrer og medietyper.
Krav:
- Genre-navn
- MediaType-navn
- Brug
CROSS JOIN
Øvelse 8 – SELF JOIN
Opgave: Vis alle medarbejdere og deres chef.
Krav:
- Medarbejderens fulde navn
- Chefens fulde navn
- Brug
SELF JOINpåEmployee - Medtag også medarbejdere uden chef
Øvelse 9 – JOIN + GROUP BY
Opgave: Vis alle kunder sammen med antallet af fakturaer og deres supportmedarbejder.
Krav:
- Kundenavn
- Antal fakturaer
- SupportRep-navn
- Brug
LEFT JOIN - Brug
GROUP BY
(Bonus opgave) Øvelse 10 – Avanceret JOIN
Opgave: Lav en oversigt over alle solgte tracks.
Krav:
- Track-navn
- Kunstner
- Album
- Genre
- Kundenavn
- Start fra
InvoiceLine - Brug mindst 5 JOINs
- Kun solgte tracks skal vises
- Sortér efter kunstner og album

