同じ列から同じ WHERE 条件を使用して、複数の部分文字列の出現回数をカウントしたいと考えています。部分文字列ごとに、繰り返しの WHERE 条件を含む UNION SELECT ステートメントがあります。最終結果は、appox を含むクエリです。2500 行の SQL コードですが、良い結果が得られます。
クエリの簡略化された例:
SELECT ‘be’ AS country, count(destination) FROM demo
WHERE destination LIKE ‘%be%’ AND field_a=xzx AND field_b=bbb
UNION SELECT ‘de’ AS country, count(destination) FROM demo
WHERE destination LIKE ‘%de%’ AND field_a=xzx AND field_b=bbb
UNION SELECT ‘fr’ AS country, count(destination) FROM demo
WHERE destination LIKE ‘%fr%’ AND field_a=xzx AND field_b=bbb
UNION SELECT ‘nl’ AS country, count(destination) FROM demo
WHERE destination LIKE ‘%nl%’ AND field_a=xzx AND field_b=bbb
クエリで WHERE 条件が 1 回だけ現れるようにクエリを変更することはできますか?
このリンクから私の質問の簡単な例を見つけてください:
https://docs.google.com/document/d/1otjZZlBy6au5E2I7T6NdSYmLayhNGWyXGxGo3gBx_-w/edit