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版