我试图实现这篇文章中的想法,以便按每对的出现来命令我的输出 -
MySQL: Count occurrences of distinct values
我需要的是能够考虑两个不同的列,而不仅仅是“名称”。那么订购下表输出的最有效方法是什么 -
id name food
----- ------ ------
1 Mark apple
2 Mike pear
3 Paul apple
4 Mike pear
5 Mike banana
6 John apple
7 Mark pear
预期的顺序应为:
name food count
----- ------ -----
Mike pear 2
Mike banana 1
Mark apple 1
Mark pear 1
Paul apple 1
John apple 1
答案 0 :(得分:3)
如果您想在这些列中计算相同的组合,您必须按两列分组:
SELECT name, food, COUNT(*) count
FROM yourtable
GROUP BY name, food
ORDER BY COUNT(*) DESC