Pan*_*kaj 3 mysql sql count distinct
我有一张桌子personid和msg柱子.
personid, msg
--------------
1, 'msg1'
2, 'msg2'
2, 'msg3'
3, 'msg4'
1, 'msg2'
Run Code Online (Sandbox Code Playgroud)
我希望得到msg每个人的总数personid.我正在尝试这个查询:
select distinct personid, count(*)
FROM mytable;
Run Code Online (Sandbox Code Playgroud)
我也试过这个查询
select distinct personid, count(msg)
FROM mytable;
Run Code Online (Sandbox Code Playgroud)
但没有得到实际的结果.我想要以上数据的结果:
id, count
--------
1, 2
2, 2
3, 1
Run Code Online (Sandbox Code Playgroud)
你只需要使用GROUP BY而不是DISTINCT.所以试试这个查询:
SELECT personid, COUNT(msg)
FROM mytable
GROUP BY personid
ORDER BY personid;
Run Code Online (Sandbox Code Playgroud)
GROUP BY让您使用聚合函数,如AVG(),MAX(),MIN(),SUM(),COUNT()等而DISTINCT只是删除重复.
| 归档时间: |
|
| 查看次数: |
244 次 |
| 最近记录: |