Vragen deel 5 inner joins Vraag 1. Met behulp van welk SQL commando laat je het Cartesisch product zien van de tabellen winkel en stad_winkel? SELECT count(*) FROM winkel, stad_winkel Vraag 2. Hoeveel winkels (ketens, dus geen filialen) staan er in de stad Amersfoort. SELECT naam, count(aantal_filialen) FROM stad, stad_winkel WHERE stad.stad_id = stad_winkel.stad_id AND stad.naam = 'Amersfoort' Vraag 3. De opdrachtgever vraagt aan jou een lijst per winkel per stad te maken. Welk SQL statement hoort bij deze vraag. SELECT winkel.winkel_naam, stad.naam FROM stad_winkel, stad, winkel WHERE stad.stad_id = stad_winkel.stad_id AND stad_winkel.winkel_id = winkel.winkel_id ORDER BY winkel.winkel_naam, stad.naam Vraag 4. Presenteer een complete lijst van steden, winkels, aantal filialen. SELECT stad.naam, stad.populatie, winkel.winkel_naam, stad_winkel.aantal_filialen FROM stad_winkel, stad, winkel WHERE stad_winkel.winkel_id = winkel.winkel_id AND stad.stad_id = stad_winkel.stad_id Extra: Vraag 5. Men wil de kolomnaam “naam” veranderen in “plaatsnaam” van het volgende SQL commando: SELECT naam FROM stad. Wat is daarvoor het juiste SQL commando? SELECT naam AS 'plaatsnaam' FROM stad -1- Vraag 6. Je wilt een lijst opvragen met alle steden en het aantal inwoners waar een filiaal van Lidl staat. De lijst moet aflopende gesorteerd zijn. Welk SQL statement gebruik je? SELECT stad.naam, populatie FROM stad_winkel, stad, winkel WHERE stad_winkel.winkel_id = winkel.winkel_id AND stad.stad_id = stad_winkel.stad_id AND stad_winkel.winkel_naam = 'Lidl' ORDER BY stad.naam DESC Vraag 7. Schrijf hieronder de uitkomst op van de volgende SQL query: SELECT s.naam, w.winkel_naam FROM stad_winkel, stad AS s, winkel AS w WHERE stad_winkel.winkel_id = w.winkel_id AND s.stad_id = stad_winkel.stad_id AND s.naam = 'Amersfoort' ORDER BY w.winkel_naam ASC naam Amersfoort Amersfoort winkel_naam Albert Heijn Hans textiel Vraag 8. Om een lijst op te vragen van het aantal winkels per stad gebruik je het SQL statement?. SELECT stad.naam, count(stad_winkel.aantal_filialen) FROM stad_winkel, stad WHERE stad.stad_id = stad_winkel.stad_id GROUP BY stad.naam -2- SQL Tabel: stad, winkel en stad_winkel Tabel: stad stad_id 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 naam Deventer Alkmaar Almere Amersfoort Amsterdam Apeldoorn Arnhem Breda Delft Dordrecht Eindhoven Enschede Groningen Den Haag Haarlem Heerlen Leiden Maastricht Nijmegen Rotterdam Tilburg Utrecht Zoetermeer Zwolle populatie 129170 92713 142465 126270 731200 153491 138020 160398 95268 119811 201843 149544 172701 440900 148772 95052 117196 122087 152463 593321 193238 234323 110214 105819 Tabel: winkel winkel_id ah ht ju li pm ze Winkel_naam Albert Heijn Hans Textiel Jumbo Lidl Plus markt Zeeman -3- SQL Tabel: stad, winkel en stad_winkel Tabel: stad_winkel stad_id 1 1 1 2 3 4 4 5 6 6 6 6 6 7 10 10 11 12 12 13 14 15 19 20 20 20 20 20 20 21 22 23 24 24 24 winkel_id ah ju li pm ze ah ht ju ah ht li pm ze ju li pm ze ah ht ju li pm ze ah ht ju li pm ze ht ah ju li pm ze Aantal_filialen 1 4 3 5 2 4 1 3 3 4 5 2 1 5 2 1 4 5 3 2 1 4 3 2 5 1 4 3 5 2 1 4 3 5 2 -4-