7

以下のサンプルテーブルを検討してください。

Profile_ID  Child_ID

1           1
1           2
1           3

2           1
2           2

3           1
3           2
3           3
3           5

子 1 および 2 および 3 に適用可能なプロファイル ID を提供する SQL クエリを作成したい...これは、プロファイル 2 が子 1 および 2 にのみ適用されるため、結果に profile_ID 2 が含まれないことを意味します。しかし、プロファイル 3 が含まれていることを期待しています。

私の考えはこれに似たものです

SELECT Profile_ID
FROM table
WHERE Child_ID IN (1 AND 2 AND 3)

今、私はそれがIN機能として機能することをよく知っています...節とOR同様の機能を実現する同様の方法はありますか?INANDOR

ご協力いただきありがとうございます。

4

1 に答える 1

7

これを試して:

select profile_id from t
where child_id in (1, 2 ,3)
group by profile_id
having count(distinct child_id) = 3

これが遊ぶためのフィドルです。

注:句3内のアイテムの量と一致していることを確認してください。in

于 2012-04-29T18:57:37.950 に答える