質問を見てくださってありがとうございます。
MySQL環境下において、以下のようなデータがあるとします。
ID | n1 | n2 | n3 | n4 | n5 | n6 | n7 | n8
165| 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11
検索する数字は以下の通りとします。
'5', '7', '11', '9', '4'
IN句でやろうと思ったのですが、存在しないカラムもあるため
SQL
1SELECT 2 id 3FROM 4 mst_nin_s8 5WHERE 6 n1 IN ('5', '7', '11', '9', '4') 7AND n2 IN ('5', '7', '11', '9', '4') 8AND n3 IN ('5', '7', '11', '9', '4') 9AND n4 IN ('5', '7', '11', '9', '4') 10AND n5 IN ('5', '7', '11', '9', '4') 11AND n6 IN ('5', '7', '11', '9', '4') 12AND n7 IN ('5', '7', '11', '9', '4') 13AND n8 IN ('5', '7', '11', '9', '4')
のようなクエリでは、結果が0件となってしまいます。
トリッキーな考え方が必要かと思うのですが、思い浮かびませんでしたので、質問させていただきます。
SQL1発でIDを取得する方法はないでしょうか。
-------更新
検索する数字 '5', '7', '11', '9', '4' がn1〜n8のいずれかにすべて含まれているレコードを探したいということですか?
その通りです。
回答1件
あなたの回答
tips
プレビュー