选择包含空值的表

时间:2018-04-19 16:03:13

标签: sql sql-server tsql

我有下表(tbl)

enter image description here

我想返回这些结果

enter image description here

如果Col1分组中的所有条目(Col2)都已填满,则Col3为1,否则为0。

有没有简单的方法可以在不创建任何其他嵌套表的情况下执行此操作?

1 个答案:

答案 0 :(得分:2)

您可以使用聚合和case

select col1, max(col2) as col2,
       (case when count(*) = count(col2) then 1 else 0 end) as col3
from t
group by col1;

如果你想要不可思议,你可以在没有case

的情况下做到这一点
select col1, max(col2) as col2,
       (1 - sign(count(*) - count(col2))) as col3
from t
group by col1;