RimEx Skrevet 12. desember 2010 Del Skrevet 12. desember 2010 Heisann! Har laget en database som innholder flere ulike entiter: Bok(ID, Tittel, Forlag-ID) Forfatter(ID, Fornavn, Etternavn, Nasjonalitet, URL) Forlag(ID, Navn, URL) Sjanger(ID, Betegnelse, Beskrivelse) BokForfatter(Bok-ID, Forfatter-ID) BokSjanger(Bok-ID, Sjanger-ID) primernøkkelene er understreket. Jeg skal lage en spørring som finner forfatter-id, forfatternavn og antall bøker for alle forfattere som er registrert i databasen. Forfattere som ikke har registrert noen bøker, skal ikke være med i resultatet. Noe jeg altså ikke får til. Er det noen der ute som ser en løsning, og som kan være behjelpelig? Lenke til kommentar
War Skrevet 12. desember 2010 Del Skrevet 12. desember 2010 (endret) Det hadde vært lettere om du hadde create table-skriptet til oss. Nå får ikke jeg prøvd, men det skulle vel bli nesten sånn? Må understreke at jeg ikke kan mysql, bare gjetter i vildens sky utifra listen din over. SELECT Forfatter.ID, Forfatter.Fornavn, Forfatter.Etternavn, COUNT(Bok.ID) AS antall FROM BokForfatter, Forfatter INNER JOIN Forfatter AS Forfatter ON BokForfatter.Forfatterid = Forfatter.Forfatterid INNER JOIN Bok ON Bok.bokid = bokforfatter.bokid GROUP BY forfatter.fornavn, forfatter.etternavn ORDER BY antall DESC; Evt kun forfatter og bøker SELECT f.fornavn, f.etternavn, COUNT(Bok.bokid) AS antall FROM Bokforfatter AS bf INNER JOIN Forfatter AS f ON bf.forfatterid = f.forfatterid INNER JOIN Bok ON Bok.bokid = bf.bokid GROUP BY f.fornavn, f.etternavn ORDER BY antall DESC; Endret 12. desember 2010 av War Lenke til kommentar
norpheus Skrevet 15. desember 2010 Del Skrevet 15. desember 2010 Heisann! Har laget en database som innholder flere ulike entiter: Bok(ID, Tittel, Forlag-ID) Forfatter(ID, Fornavn, Etternavn, Nasjonalitet, URL) Forlag(ID, Navn, URL) Sjanger(ID, Betegnelse, Beskrivelse) BokForfatter(Bok-ID, Forfatter-ID) BokSjanger(Bok-ID, Sjanger-ID) primernøkkelene er understreket. Jeg skal lage en spørring som finner forfatter-id, forfatternavn og antall bøker for alle forfattere som er registrert i databasen. Forfattere som ikke har registrert noen bøker, skal ikke være med i resultatet. Noe jeg altså ikke får til. Er det noen der ute som ser en løsning, og som kan være behjelpelig? Hva med: SELECT f.ID, f.Fornavn, f.Etternavn, (SELECT COUNT(*) FROM BokForfatter WHERE Forfatter-ID=f.ID) AS Antall FROM Forfatter f ORDER BY f.Etternavn, f.Fornavn Dette bør hente forfatterid, fornavn, etternavn og antall bøker tilknyttet denne forfatteren Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå