SQL: Anzahl der Artikel zum Kategorie per Unterabfrage ermitteln

Gegeben sind zwei Tabellen, die mit einem Fremdschlüssel (CategoryID) verbunden sind. Typisch für die Auflistung bei Blogs.

Categories
ID Category
1 Funiture
2 Automobiles
3 Buildings
4 Computer
 
Articles
ID CategoryID Article
1 1 Table
2 1 Chair
3 2 Car
4 2 Truck
5 3 Skycraper
6 4 Mouse
7 4 Honitor
8 4 Keyboard

Die Anzahl der Artikel erhalten wir per Unterabfrage (SELECT COUNT...). Da einfach die Schlüssel bei der Tabellen verknüpfen.

SELECT Category,
       (SELECT COUNT(*) 
        FROM Articles 
        WHERE CategoryID = Categories.ID) AS Num
FROM Categories
ORDER BY Category;
Category Num
Automobiles 2
Buildings 1
Computer 3
Funiture 2

SQL

Juni 2007 | Permalink | Feedback