1
私はより良い方法でこのクエリMySQLで()とLIKE一緒
SELECT * FROM [table] WHERE
(column1 = 'dog' AND column2 = 1) OR
(column1 = 'cat' AND column2 = 2) OR
(column1 = 'mouse' AND column3 = 3) OR
(column1 = 'wolf' AND column4 = 4);
を書き換えることができることを知っている:
SELECT * FROM [table] WHERE
(column1 = 'dog' AND column2 like '%red%') OR
(column1 = 'cat' AND column2 like '%blue%') OR
(column1 = 'mouse' AND like '%red%') OR
(column1 = 'wolf' AND column2 like '%green%');
:このクエリの同様の方法が
SELECT *
FROM [table]
WHERE (column1, column2) IN (('dog', 1), ('cat', 2), ('mouse', 3),
('wolf', 4));
あり
大括弧で '[table]'を使用しているため、Microsoft SQL Serverを使用していると仮定します。あなたの質問に正確にタグを付けてください.SQL質問にmysqlにタグを付けないでください。 SQLデータベースの各ブランドにはそれぞれ独自の言語拡張機能がありますので、必要な答えは使用するブランドによって異なります。 –
また可能な複製:https://stackoverflow.com/questions/1865353/combining-like-and-in-for-sql-server –
この質問はmysqlについてです。私はそれを変えた。 –