📑
Rails - LIKE句を使った文字のあいまい検索
はじめに
今回は検索機能で使用するLIKEについて説明します!
Likeとは
「LIKE」は「曖昧検索」を行うための仕組みです。
ワイルドカード文字を使用して○○を含んだ文字列を探すといった処理を行うものです。
検索の種類
検索の種類について説明します!
完全一致、前方一致、後方一致、部分一致の4つあり、使用法は下記に記載します。
完全一致検索
モデル名.where('カラム名 like ?','検索したい文字列')
前方一致検索
モデル名.where('カラム名 like ?','検索したい文字列%')前方一致
モデル名.where('カラム名 like ?','検索したい文字列_')後ろに一文字だけ付いている前方一致
記号の意味は
- % 任意の0文字以上の文字列
- _ 任意の1文字
後方一致検索
モデル名.where('カラム名 like ?','%検索したい文字列')後方一致
モデル名.where('カラム名 like ?','_検索したい文字列')先頭に一文字だけ付いている後方一致
部分一致
モデル名.where('カラム名 like ?','%検索したい文字列%')文字列のどの部分にでも検索したい文字列が含まれていればOK
モデル名.where('カラム名 like ?','_検索したい文字列_')先頭と後方に一文字だけ何か文字が付いていて、検索したい文字列が中間にある場合。
Discussion