
MySQLでSELECT文を書く際に、1対多のリレーションで、指定した値(多側)しか一致しない値の取得方法を教えてください。
例としては下記の様にユーザが複数の区分を所持しており、チェックボックスにて指定した区分のみを持っているユーザをテーブルをJOINして取得したいと考えております。
例)kubun_id 2と3のみを所持しているユーザーを取得したい、下記の場合ユーザID 3 の人のみを取得したい
USER_TABLE
user_id ,その他付属情報
1
2
3
4
USER_KUBUN_TABLE
user_id ,kubun_id
1 ,1
1 ,2
1 ,3
2 ,1
3 ,2
3 ,3
どうぞ宜しくお願いいたします。
No.1ベストアンサー
- 回答日時:
手っ取り早いのはgroup_concat
select user_id from USER_KUBUN_TABLE
group by user_id
having group_concat(distinct kubun_id order by kubun_id)="2,3"
ちゃんとやるならこう?
select user_id from USER_KUBUN_TABLE
group by user_id
having count(distinct kubun_id)=2
and sum(not kubun_id in(2,3))=0
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
select文のwhere句に配列を入れ...
-
エクセルで最後の文字だけ置き...
-
マイクラPC版のコマンドで効率...
-
入力値と外部キーをINSERTするには
-
ある条件の最大値+1を初番する...
-
MySQLのint型で001と表示する方...
-
URL と行番号の指定
-
”photo id” とは何ぞや?
-
sqlで、600行あるテーブルを100...
-
レコード削除・sqlインジェクシ...
-
SQLサーバから、項目の属性(型...
-
テーブル作成時のカラムについて
-
所有格の意味
-
スクリーンセイバー
-
Yahoo .comの idには年齢制限、...
-
VBA リボンのCheckBox2個をOpt...
-
PL/SQLの変数について
-
差し込み後、元データを変更し...
-
1日に1人がこなせるプログラム...
-
access2003 クエリSQL文に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで最後の文字だけ置き...
-
エラー 1068 (42000): 複数の主...
-
エクセルの関数について教えて...
-
VIEWの元のテーブルのindexって...
-
sqlで、600行あるテーブルを100...
-
SQLサーバから、項目の属性(型...
-
SQL Left Join で重複を排除す...
-
Access パラメータクエリをcsv...
-
クエリ表示と、ADOで抽出したレ...
-
ストアドのエラーについて
-
マイクラPC版のコマンドで効率...
-
バインド変数について
-
SQLにて特定の文字を除いた検索...
-
副問合せの書き方について
-
【Transact-sql】 execの結果を...
-
”photo id” とは何ぞや?
-
mysql+phpをつかったカートつく...
-
MySQL5.5 viewの処理速度改善に...
-
select文のwhere句に配列を入れ...
-
テーブル名を省略して「h.id」...
おすすめ情報