我正在尝试计算从不同广告获得的每次点击有多少次。 所以开始:
SELECT DISTINCT category FROM dbtable
那给了我6个不同的类别,很好。 现在,我想对每一行进行计数,以便结果如下所示:
category, 4
category, 8
category, 12
category, 72
category, 5
category, 65
我尝试过:
SELECT COUNT (DISTINCT category) FROM dbtable
这是我的第一个类别的数量...
在这里我被卡住了。 :)
答案 0 :(得分:0)
您需要添加 GROUP BY :
SELECT category, COUNT(*) FROM dbtable GROUP BY category
请注意:
您需要GROUP BY来收集数据,以便DB服务器可以对每一行进行计数并按类别对其进行过滤,如果没有服务器,服务器将不知道要统计哪些行;
您必须记住,Group By子句始终位于 SQL查询,就像Order by子句一样。
您不需要DISTINCT ,因为GROUP BY可以完成此工作。 (感谢jarlh)
您可以在这里找到更多关于小提琴的解释:https://www.w3schools.com/sql/sql_groupby.asp
答案 1 :(得分:0)
使用分组依据,计数方式如下:
SELECT category,count(category) FROM dbtable GROUP BY category
答案 2 :(得分:0)
使用GROUP BY
吗?
SELECT category, COUNT(*) AS count
FROM dbtable
GROUP BY category;
答案 3 :(得分:0)
尝试一下:-
SELECT category, COUNT(1) FROM dbtable GROUP BY category
如果您要具体记录,请尝试
SELECT category, COUNT(1) FROM dbtable GROUP BY category having count(1)>10