我想计算表中每个用户的行数。例如,假设我有一个这样的表:
user_id | order_id | name
--------+----------+-----
6 | a1 | Joe
6 | b4 | Joe
6 | c2 | Joe
6 | d5 | Joe
6 | a6 | Joe
8 | b9 | Mary
8 | c7 | Mary
8 | a2 | Mary
3 | ba | Jack
3 | c3 | Jack
3 | a9 | Jack
3 | b6 | Jack
5 | c9 | Jill
5 | d2 | Jill
我想要一个结果,告诉我乔出现5次,玛丽出现3次,杰克出现4次,吉尔出现两次。所以我想要一条sql语句(最好是mySql,但是任何语言都可以),这样的结果如下:
name | user_id | count
-----+---------+------
Joe | 6 | 5
Mary | 8 | 3
Jack | 3 | 4
Jill | 5 | 2
在sql中有没有办法做到这一点?我找不到一个,但我对sql并不了解很多。
答案 0 :(得分:1)
Select
Count(userid) as count
, userid
, name
From table
Group by userid, name
答案 1 :(得分:1)
请尝试:
SELECT COUNT(order_id) AS count, name FROM table_name GROUP BY name