在MySQL中的多个列上有所不同

Nic*_*lis 3 mysql sql count distinct

我希望找出MySQL数据库中不同行的计数.

id | val1 | val2 | val3

1  |  1   |  1   |  1
2  |  1   |  1   |  1
3  |  2   |  2   |  2
4  |  2   |  2   |  2
Run Code Online (Sandbox Code Playgroud)

在上面的表上,查询将返回

val1 | val2 | val3 | count
1    |   1  |  1   |   2 
2    |   2  |  2   |   2
Run Code Online (Sandbox Code Playgroud)

有没有人知道在MySQL中实现这一目标的合理有效方法.

him*_*056 5

你需要使用GROUP BY这个条款:

SELECT val1, val2, val3, count(*) AS count
FROM mytable GROUP BY val1, val2, val3
Run Code Online (Sandbox Code Playgroud)

看到这个小提琴

  • 太棒了,谢谢你指出了sqlfiddle! (3认同)