PostgreSQL
ILIKE
大文字・小文字を区別しないあいまい検索
解説
標準の LIKE 演算子はアルファベットの大文字・小文字(例: 'abc' と 'ABC')を厳密に区別しますが、PostgreSQL独自の ILIKE を使うと大文字・小文字を区別せずにあいまい検索が行えます。
他DBとの比較
- MySQL: デフォルトの照合順序(Collation)が大文字小文字を区別しない設定(utf8mb4_general_ciなど)になっていることが多く、通常の
LIKEでも区別されずに検索されます。 - Oracle / 他:
LOWER(列) LIKE '%abc%'のように関数で小文字に揃えてから比較するのが一般的です。
構文
SELECT * FROM 表 WHERE 列 ILIKE 'パターン';
具体例
SELECT * FROM users WHERE email ILIKE '%@GMAIL.COM';
この構文を実際に書いて試してみませんか?
SQLエディタを開く