LIKE 演算子
文字列があるパターンに合致しているかをチェックすることをパターンマッチングという。
SQLではこのパターンマッチングにLIKE 演算子を用いる。
式 LIKE パターン文字列
LIKE演算子以降のパターン文字列には、以下のパターン文字を使用できる。
| パターン文字 | 意味 |
|---|---|
| % | 任意の0文字以上の文字列 |
| _ (アンダースコア) | 任意の1文字 |
-- title に '100' を含むデータを取得
SELECT * FROM movie WHERE title LIKE '%100%';
パターン文字のエスケープ処理
パターン文字ではなく単なる文字として % や _ を使いたい時は、ESCAPE句を使用する。
ESCAPE句で指定した文字(エスケープ文字)に続く % や _ は、ただの文字として扱われる。
-- title が '100%' で終わるデータを取得
SELECT * FROM movie WHERE title LIKE '%100$%' ESCAPE '$';
ちなみに、MySQLではデフォルトで ¥ がエスケープ文字として扱われる。
-- title が '100%' で終わるデータを取得
SELECT * FROM movie WHERE title LIKE '%100¥%';
参考図書:スッキリわかるSQL入門 第2版