我有这样的表:
Year Month Type
2013 4 31
2013 3 31
2014 5 40
2014 6 41
2015 5 31
2015 7 40
2013 4 31
2013 3 31
2014 5 40
2014 6 41
2015 5 31
2015 7 40
2013 4 31
2013 3 31
我想计算每个组合出现的次数。所以输出应该是这样的:
Year Month Type Count_of_appearance
2013 3 31 3
2013 4 31 3
etc..
我一直在使用类似的东西:
SELECT Year,
Month,
Type,
(SELECT COUNT (*)
FROM myTable
WHERE (...im lost in defining a condition in order to make this work...)
AS Count_of_appearance
FROM employee;
我在定义功能性 WHERE 子句时迷失了方向。
问题是我有很多这样的字段和很多独特的值。表是 8Gb 大。
您正在寻找GROUP BY
:
SELECT Year, Month, Type, COUNT(*) AS Count_of_appearance
FROM employee
GROUP BY Year, Month, Type
ORDER BY Year, Month, Type;
为确保结果的顺序正确,您还应该包含一个ORDER BY
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句