2016-08-02 73 views
0

MySQL我有一张桌子。如何计算2列的记录数

实施例:

id name type 
1 Thomas 2 
2 Thomas 2 
3 Thomas 1 
4 Paul 3 
5 Paul 4 
6 Paul 4 

我需要通过2列计算相同的记录。 结果这个例子应该是:

name type countOfRecords 
Thomas 2  2 
Thomas 1  1 
Paul 3  1 
Paul 4  2 

你能帮我这个要求吗?

+0

你应该给的,到目前为止,你已经尝试过什么,什么没有工作的例子。 – Titi

回答

1

既然你想在你的结果记录为每名组和 你需要按nametype键入<name,type>对。

SELECT 
name, 
type, 
COUNT(*) countOfRecords 
FROM your_table 
GROUP BY name,type; 

注:

Group BY <some column>将产生一个结果集,其中行数=的不同的/不同的/独特<some column>号码。

同样适用于GROUP BY条款中的多列。

0

这可能是正确的解决方案:

SELECT name, type, COUNT(*) as countOfRecords 
FROM your_table 
GROUP BY name,type;