当我这样做时:
select firstpartno,count(firstpartno)
from dbo.vw_Split4
group by firstpartno
效果很好。
Mow我想要两个新列nMaleCount
,nFemaleCount
。这些将分别是M和F的计数(firstpartno)。但伯爵强迫我按性别分组,这是我不想要的。我想做所有这些并拥有我的四个专栏,但仅限于firstpartno。请帮忙!
vw_Split4如下:
firstpartno Sex
1 M
2 F
2 F
3 M
5 M
2 M
我希望它之后是这样的:
firstpartno Sex nMaleCount nFemaleCount
1 M
2 F
2 F
3 M
5 M
2 M
非常感谢提前!
答案 0 :(得分:0)
您可以在CASE声明中使用SUM:
select firstpartno
,count(firstpartno)
,sum(case when sex = 'm' then 1 else 0 end) nMaleCount
from dbo.vw_Split4
group by firstpartno
答案 1 :(得分:0)
如果我理解你的问题,你宁可这样做:
SELECT firstpartno, Sex, COUNT(firstpartno)
GROUP BY firstpartno, Sex
除非您因某种原因想将M和F的计数除以2列......