sql select records having count > 1 where at lease one record has value

后端 未结 5 1919
情深已故
情深已故 2021-02-13 18:20

I\'m trying to get all participants that have more than 1 record in the table where at lease one of those records has IsCurrent = 0 and IsActive = 1

This is what I have

5条回答
  •  野的像风
    2021-02-13 18:42

    select 
      ParticipantId
    from Contact as c
    group by
      ParticipantId
    having 
      Count(*) > 1
      and
      Sum(Case when IsCurrent = 0 then 1 else 0 end) >= 1
      and
      Sum(Case when IsActive = 1 then 1 else 0 end) >= 1
    

    I would first try this

提交回复
热议问题