小编Pio*_*ski的帖子

选择满足组条件的行(无临时表)

有 3 列的表:

ID  category    flag
1       A       1
2       A       0
3       A       0
4       B       0
5       C       0
Run Code Online (Sandbox Code Playgroud)

我想选择flag = 1每个类别至少有一次的所有行。

预期成绩:

ID  category    flag
1       A       1
2       A       0
3       A       0
Run Code Online (Sandbox Code Playgroud)

可以使用这样的临时表来解决:

select ID into #tempTable from someTable where flag = 1
select * from someTable join #tempTable on someTable.ID = #tempTable.ID
Run Code Online (Sandbox Code Playgroud)

但我更喜欢分组的解决方案,我很难想出。任何帮助将不胜感激。

sql-server group-by

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

group-by ×1

sql-server ×1