SQL Server:计算一次多少次

时间:2016-04-01 16:50:39

标签: sql count

我正在学习SQL,我暂时遇到某个问题。我有一个巨大的数据集,如:

id  v1
1   3
2   3
3   -
4   5
5   3
6   5
7   3

我需要计算每个id在v1中的次数。我寻求的输出是:

id  count
1   0
2   0
3   4
4   0
5   2
6   0
7   0

一直在很多论坛上寻找答案。问题是有很多id,所以我不能用数字“1”搜索,依此类推。如果我使用类似id = v1的东西,我会得到一行在这些列中具有相同值的次数。寻求一些帮助。请。

1 个答案:

答案 0 :(得分:3)

试试这个:

SELECT t1.id, COUNT(t2.v1)
FROM mytable AS t1
LEFT JOIN mytable AS t2 ON t1.id = t2.v1
GROUP BY t1.id
ORDER BY t1.id 

Demo here