我试图理解这个问题有很多问题,请原谅我最有可能重复的问题。
我有2个表,一个称为“类别”,另一个称为“项目”。 “items”中的每一行都有一个category_id字段,该字段与“category”表中的category_id字段相匹配。
在一个mysql语句中,我想获取“items”中每个category_id的行计数,还要检索“category”中的category_name,这样我就可以打印出这样的类别列表:
到目前为止,我在这里找到的问题似乎只是从“items”返回category_id,所以结果看起来像这样:
请?我确信它可以在一个mysql语句中完成,到目前为止,我不得不求助于两个单独的查询,其唯一目的是获取那个小数字。
答案 0 :(得分:1)
这对你有用;
SELECT c.name AS theName, COUNT(i.id) AS theCount
FROM category AS c JOIN items AS i ON i.category_id = c.id
GROUP BY i.category_id
//修改
对不起,我应该解释一下。
Select
抓取类别名称和项目数。
From
正在进行将项目和类别绑定在一起的连接。
Group By
确保类别ID是查询中的唯一内容。