の3行の値のリストからの値と一致する行を返すようにデータベースにクエリします。これは可能ですか?MySQLの複数の列からANYを選択
私のテーブルには、次の列があります。id、ANS1、ANS2、ANS3
そして、これは、クエリでの私の試みです:
SELECT *
FROM table
WHERE
ans1 IN ("Yes", "No", "Maybe") OR
ans2 IN ("Yes", "No", "Maybe") OR
ans3 IN ("Yes", "No", "Maybe");
3列は各ヌル、およびIすることができリストの値が("Yes","No","Maybe)
である場合は、になります。(またはそれ以上)の列を返すだけです。クエリは正常に実行され(構文エラーなし)、値が存在する行がすべて列にのみ返されます。例えば
:私はすべての3つの行を返すクエリを希望するが、各列は、一致する値を含むように代わりそれだけ1行を返す
INSERT INTO table
(ans1,ans2,ans3)
VALUES
("Yes","No","Maybe"),
(null,"Yes",null),
(null,null,"Yes");
。
試したクエリは機能しませんか?そうだとすれば、何が問題なのでしょうか? – VeeArr
問題が1つだけの結果が必要な場合は、そのクエリの最後に1の制限があります;) –
応答ありがとう、しかし私は上記の私の編集ごとにすべての行を探しています。 – Jason