0

我有两张桌子。如下

表:类别

categoryID  categoryName
----------  -------------
    1         Fruit
    2         Country
    3         Car

表:项目

 ItemID    CategoryID   ItemName
 -------   ----------   ----------
    1          1         Apple
    2          1         Mango
    3          1         Banana
    4          2         USA
    5          2         Japan
    6          3         Honda
    7          3         Toyota

我需要一个选择查询,它会给我类别,以及每个类别下的项目数。像这样:

categoryID  categoryName    ItemCount
----------  -------------   ----------
    1         Fruit             3
    2         Country           2
    3         Car               2

如何在 SQL 查询中实现这一点?我需要一个查询,而不是带有变量的过程:(

4

2 回答 2

2
select c.categoryID, c.categoryName, count(*) as ItemCount
FROM category c
inner join items i on i.categoryId = c.categoryId
GROUP BY c.categoryID, c.categoryName
于 2013-02-20T08:12:07.310 回答
0

试试这个查询

SELECT c.categoryID,  c.categoryName, count(*) as 'ItemCount' 
FROM Category c, Items i 
WHERE c.categoryID = i.categoryID 
GROUP BY c.categoryID,  c.categoryName;

小提琴

希望这可以帮助

于 2013-02-20T08:13:39.880 回答