SQL oppgave 3 Løsningsforslag 20.11.2014 SQL Oppgave 3 Gjennomgang tirsdag 25/11 Lag SQL-spørringene i oppgavene under ved hjelp av phpmyadmin mot databasen Bokormen. 1. Hent ut et adresseregister som inneholder fornavn, etternavn, adresse, postnr og sted for alle medlemmene i Bokormen. 2. Hvilke boktitler er utgitt av? 3. Vis en fordeling av antallet bøker hvert forlag har utgitt. 4. Hent ut en liste som inneholder ISBN og tittel for alle bøkene i databasen, samt ansvarliges fornavn, etternavn og rolle. Listen skal sorteres stigende på tittel (fra A til Å). 5. Hvilke bøker ble tilbudt i de tre bokklubbene som månedens bok i november 2005? Svaret skal vise tittel på boken og klubbnavn og sorteres stigende på klubbnavn. 6. Hvilke boktitler skrevet av Astrid Lindgren er tilbudt i? 1
Oppgave 1 Hent ut et adresseregister som inneholder fornavn, etternavn, adresse, postnr og sted for alle medlemmene i Bokormen. Medlem (Medlemsnr, Fornavn, Etternavn, Adresse, Postnr, Telefonnr, E- post, Fødselsdato, Brukernavn, Passord) Poststed (Postnr, Sted) SELECT Fornavn, Etternavn, Adresse, Medlem.Postnr, Sted FROM Medlem, Poststed WHERE Medlem.Postnr = Poststed.Postnr; Fornavn Etternavn Adresse Medlem.Postnr Sted Liv Berit Nilsen Ringen 5b 1777 Halden Lasse Andersen Fjellvannet 136d 735 Oslo Hans Jonassen Stien 8 2730 Lunner Karen Myklebust Krokv. 26 462 Oslo Jonas Gråseter Stredet 149 7010 Trondheim Oppgave 2 Hvilke boktitler er utgitt av? Forlag (ForlagID, Navn, Adresse, Postnr) SELECT, Navn FROM Bok, Forlag WHERE Navn = '' AND Bok.ForlagID = Forlag.ForlagID; Kjempene faller Døden på Oslo S Giftige løgner Fredag den trettende Modellen : roman Innocentia Park Navn 2
Oppgave 3 Vis en fordeling av antallet bøker hvert forlag har utgitt. Forlag (ForlagID, Navn, Adresse, Postnr) SELECT Navn, COUNT(ISBN) FROM Forlag, Bok WHERE Bok.ForlagID = Forlag.ForlagID GROUP BY Navn; Navn COUNT(ISBN) Aschehoug 7 Bazar 3 13 Damm 4 Dinamo 1 Gyldendal 17 Pax 1 Piratforlaget 1 Tiden 1 Tun 1 Oppgave 4 Hent ut en liste som inneholder ISBN og tittel for alle bøkene i databasen, samt ansvarliges fornavn, etternavn og rolle. Listen skal sorteres stigende på tittel (fra A til Å). Dataene er lagret i tre tabeller: Ansvarlig (AnsvarligID, Fornavn, Etternavn) Utgivelse (ISBN, AnsvarligID, Rolle) SELECT Bok.ISBN,, Fornavn, Etternavn, Rolle FROM Bok, Utgivelse, Ansvarlig WHERE Bok.ISBN = Utgivelse.ISBN AND Ansvarlig.AnsvarligID = Utgivelse.AnsvarligID ORDER BY ; 3
SELECT Bok.ISBN,, Fornavn, Etternavn, Rolle FROM Bok, Utgivelse, Ansvarlig WHERE Bok.ISBN = Utgivelse.ISBN AND Ansvarlig.AnsvarligID = Utgivelse.AnsvarligID ORDER BY ; Bok.ISBN Fornavn Etternavn Rolle 82-478-0583-9 Arkimedes og brødskiva Hans Sande Forfatter 82-478-0583-9 Arkimedes og brødskiva Gry Moursund Illustratør 82-05-34571-6 Baldemar : en fortreffelig Knut bjørn Faldbakken Forfatter 82-02-20176-4 Beatles Lars Saabye Christensen Forfatter 82-05-32790-4 Charlie og den store glassheisen Roald Dahl Forfatter 82-05-34587-2 Charlie og sjokoladefabrikken Roald Dahl Forfatter 82-05-34545-7 Hvis jeg bare ikke hadde Ingelin gjort Pappa til astronaut Angerborn Forfatter 978-82-02-24487-3 Innocentia Park Ingvar Ambjørnsen Forfatter 82-03-24671-0 Jakob og fugleskremselet Philip Pullman Forfatter 82-03-04109-4 Jul i Bakkebygrenda Astrid Lindgren Forfatter 82-530-2821-0 Kafka på stranden Haruki Murakami Forfatter 978-82-02-24365-4 Karsten og Petras ABS Tor Åge Bringsværd Forfatter 978-82-02-24365-4 Karsten og Petras ABS Anne Holt Illustratør 82-05-34312-8 Kennedys hjerne Henning Mankell Forfatter 82-02-24699-0 Kjempene faller Ingvar Ambjørnsen Forfatter 82-04-10181-3 Mamma Mø klatrer i trærne Jujja Wieslander Forfatter Oppgave 5 Hvilke bøker ble tilbudt i de tre bokklubbene som månedens bok i november 2005? Svaret skal vise tittel på boken og klubbnavn og sorteres stigende på klubbnavn. Dataene er lagret i tre tabeller: Klubb (KlubbID, Klubbnavn) Tilbud (KlubbID, ISBN, Mnd, År) SELECT, Klubbnavn FROM Klubb, Bok, Tilbud WHERE Mnd = 11 AND Tilbud.År = 2005 AND Klubb.KlubbID = Tilbud.KlubbID AND Bok.ISBN = Tilbud.ISBN ORDER BY Klubbnavn; Snort stories Molly Moons eventyrlige tidsreise Zorro : ukjente år Klubbnavn Lesehesten Leseløven 4
Oppgave 6 Hvilke boktitler skrevet av Astrid Lindgren er tilbudt i? Dataene er lagret i fem tabeller: Ansvarlig (AnsvarligID, Fornavn, Etternavn) Utgivelse (ISBN, AnsvarligID, Rolle) Klubb (KlubbID, Klubbnavn) Tilbud (KlubbID, ISBN, Mnd, År) SELECT, Klubbnavn FROM Bok, Ansvarlig, Utgivelse, Klubb, Tilbud WHERE Fornavn = 'Astrid' AND Etternavn = 'Lindgren' AND Klubbnavn = '' AND Rolle = 'Forfatter' AND Ansvarlig.AnsvarligID = Utgivelse.AnsvarligID AND Bok.ISBN = Utgivelse.ISBN AND Bok.ISBN = Tilbud.ISBN AND Klubb.KlubbID = Tilbud.KlubbID; Jul i Bakkebygrenda Per Pusling Vi på Saltkråkan Klubbnavn 5