TSQL分组与计数

时间:2012-09-20 12:14:45

标签: sql-server sql-server-2008 tsql counter

我的员工有一个名字,一个他必须得分的奥特莱斯,他必须为奥特莱斯分数。 每个员工都可以拥有多个奥特莱斯,但至少只有1个奥特莱斯需要得分,如果该奥特莱斯属于该员工。

所以我可能会有这样的记录。

Mike -----Outlet1---- 20
Mike----- Outlet2----  0
John----- Outlet3---- 44
Larry---- Outlet4----- 0

员工必须至少为1个属于他的网点获得1分。 因此我不想算Mike,因为他评价了一个Outlet,我只想将值1作为我的结果集返回,因为Larry没有评价任何奥特莱斯。

表格为:Select Name, Outlet, Score from TableName

1 个答案:

答案 0 :(得分:3)

如果我理解正确,你需要计算没有得分的名字。

select
  Count(*) as Count
from
(
  select
    Name,
    Sum(Score) as Score
  from
   TableName
  group by
    Name
  having 
    Sum(Score) = 0
) as aa