MySQLのLIKE句
・開発環境はWindows 7 Professional(32bit)+10.1.25(MariaDB)。
articleテーブルのtextフィールドにbasketballという値が入っていた場合、
select * from article where text like 'basket'; # 表示されない select * from article where text like 'basket%'; # 表示される select * from article where text like 'sket%'; # 表示されない select * from article where text like '%sket%'; # 表示される select * from article where text like '%ball'; # 表示される
大文字小文字の区別
like binary 'pattern';
% 任意の0文字以上の文字列
_ 任意の1文字
検索文字列に、%や_や\を用いたい場合
\%,\_,\\
↓
\以外の任意の文字でエスケープ
like 'pattern$_' escape '$';
特定の文字を含まない場合
・articleテーブルのあるtextフィールドにbasketballという値が入っていた場合、
select * from article where text not like 'pattern'; select * from article where text not like 'basket'; # basket以外が表示される。likeとは違う。
参考リンク
[初心者向け]MySQLで特定のキーワードを含むデータを取得する方法~like検索の使い方 | Web活メモ帳
パターンマッチングで比較(LIKE演算子) - データの取得 - MySQLの使い方