有 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)
但我更喜欢分组的解决方案,我很难想出。任何帮助将不胜感激。