2

私の従業員には名前があり、アウトレットにスコアを付ける必要があり、アウトレットにスコアを付ける必要があります。各従業員は多くのアウトレットを持つことができますが、少なくともそのアウトレットがその従業員に属している場合は、1つのアウトレットのみをスコアリングする必要があります。

だから私はこのような記録を持っているかもしれません。

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

従業員は、自分が所有するアウトレットの1つに対して少なくとも1つのスコアを持っている必要があります。したがって、マイクがアウトレットを評価したので数えたくありません。ラリーがアウトレットを評価しなかったので、結果セットとして値1を返したいだけです。

テーブルは次のようになります。Select Name, Outlet, Score from TableName

4

1 に答える 1

3

私が正しく理解しているなら、あなたはアウトレットを獲得しなかった名前の数を求めています。

select
  Count(*) as Count
from
(
  select
    Name,
    Sum(Score) as Score
  from
   TableName
  group by
    Name
  having 
    Sum(Score) = 0
) as aa
于 2012-09-20T12:22:44.730 に答える