2
我试图计算一列中的所有“Y”和“N”,但将它们按另一列分组。我可以把它拉只是“Y”或“N”与WHERE:对同一列进行多次计数,已分组
SELECT TABLE2.GROUP_BY_THIS,COUNT(TABLE1.FLAG)
FROM TABLE1 INNER JOIN
TABLE2 On TABLE1.Primary_Key = TABLE2.Foreign_Key
WHERE TABLE1.FLAG_Required = "Y"
GROUP BY TABLE2.GROUP_BY_THIS
,我可以看到的“Y” S和“N” S为整个数据集,而不是由分组SQL - Counting a column twice但我不太知道如何让我的期望的结果应该看起来有点像这样:
GROUP_BY_THIS Y COUNT N COUNT
-------------------------------
GROUP1 10 1
GROUP2 10 100
GROUP3 0 10
GROUP4 50 500
GROUP5 1000 0
我需要进一步分组以某种方式使用第一个答案这里的另一列?
不应该是SUM()而不是COUNT()? – 2013-05-09 11:49:23
@frikozoid在这种情况下,如果没有指定ELSE,并且true条件的值为1,则COUNT()和SUM()会产生相同的结果。 – 2013-05-09 11:54:51
@Andomar哦,好的。 NULL不计数:)。 +1 – 2013-05-09 11:56:46