3列のテーブルがある場合:
ID category flag
1 A 1
2 A 0
3 A 0
4 B 0
5 C 0
flag = 1
カテゴリごとに少なくとも1回はあるすべての行を選択します。
予期された結果:
ID category flag
1 A 1
2 A 0
3 A 0
次のような一時テーブルを使用して解決できます。
select ID into #tempTable from someTable where flag = 1
select * from someTable join #tempTable on someTable.ID = #tempTable.ID
しかし、私は思いついたグループ化を使用した解決策を好みます。任意の助けをいただければ幸いです。