Sql 确定没有值的行

Sql determine rows that dont have value

我有一个 table return 结果像

abc   yes
abc   no
cdef  no
cdef  no
cdef  no
xyz   yes
xyz   no
xyz   no

示例查询

with abc as(
select 'abc' as b , 'yes' as a
union all
select  'abc', 'no'
 
union all
select  'cdef', 'no'
union all
select  'xyz', 'no'
union all
select  'xyz', 'no'
)
 select * from abc

我想要 return 显示帐户的结果,如果他们在任何行中有“是”则表示“是”,如果没有则表示“否”所以应该看起来像这样

abc yes
cdf no
xyz yes.

我该怎么做?

一个简单的聚合就可以解决问题。

Select Col1
      ,Col2 = max(Col2)
 From  YourTable
 Group By Col1