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