Hi Leute, ich lerne zur Zeit SQL und hänge grade an einer Aufgabe:
beers(name, date_of_creation, alcohol_by_volume, brewmaster[brewmasters], brewery[breweries])
breweries(name, year_of_foundation, current_brewmaster[brewmasters])
brewmasters(brewer_id, name, date_of_birth)
So sehen die drei Tabellen aus und die Aufgabenstellung lautet so:
Erstellen Sie eine SQL-Anfrage, die alle Braumeister mit Namen und der Anzahl der von ihnen jeweils gebrauten Biere ausgibt. Die Ausgabe soll absteigend nach Anzahl der Biere sortiert sein.
Mein Versuch:
SELECT brewmasters.name, COUNT(beers.name) AS Anzahl
FROM brewmasters INNER JOIN beers
ON brewmasters.brewer_id = beers.brewmaster
GROUP BY brewmasters.brewer_id
ORDER BY Anzahl DESC
Rein theorethisch ist es doch auch möglich, dass ich Braumeister in der "brewmasters" Tabelle habe, die keinem Bier aus "beers" zugeordnet sind. Diese müssten mit meiner Lösung allerdings nicht angezeigt werden, da ich diese mit "ON brewmasters.brewer_id = beers.brewmaster" quasi rausfiltere. Wie müsste ich es machen, dass mir die Brausmeister ohne Bier auch noch angezeigt werden. Und was haltet ihr von meiner Lösung?
Mit freundlichen grüßen,
erodad
beers(name, date_of_creation, alcohol_by_volume, brewmaster[brewmasters], brewery[breweries])
breweries(name, year_of_foundation, current_brewmaster[brewmasters])
brewmasters(brewer_id, name, date_of_birth)
So sehen die drei Tabellen aus und die Aufgabenstellung lautet so:
Erstellen Sie eine SQL-Anfrage, die alle Braumeister mit Namen und der Anzahl der von ihnen jeweils gebrauten Biere ausgibt. Die Ausgabe soll absteigend nach Anzahl der Biere sortiert sein.
Mein Versuch:
SELECT brewmasters.name, COUNT(beers.name) AS Anzahl
FROM brewmasters INNER JOIN beers
ON brewmasters.brewer_id = beers.brewmaster
GROUP BY brewmasters.brewer_id
ORDER BY Anzahl DESC
Rein theorethisch ist es doch auch möglich, dass ich Braumeister in der "brewmasters" Tabelle habe, die keinem Bier aus "beers" zugeordnet sind. Diese müssten mit meiner Lösung allerdings nicht angezeigt werden, da ich diese mit "ON brewmasters.brewer_id = beers.brewmaster" quasi rausfiltere. Wie müsste ich es machen, dass mir die Brausmeister ohne Bier auch noch angezeigt werden. Und was haltet ihr von meiner Lösung?
Mit freundlichen grüßen,
erodad