アクセス担当のまみです。
データの検索する時に、なんだったっけ?ってキーワードの一部しか覚えていないことがあったりします。
そんな時に、覚えている部分だけで検索ができたらとってもありがたいですね!
Likeとワイルドカードを使えば、あいまい検索が可能になります。
今回は、Likeとワイルドカードを使ってデータを抽出する方法をお伝えしますね。
Contents
Likeとワイルドカード
ワイルドカードにはいくつか種類があります。
ワイルドカード | 説明 |
* | 0以上の文字との一致 |
? | 1つの文字との一致 |
[] | カッコ内の1つの文字との一致 |
! | カッコ内の文字以外と一致 |
– | 範囲指定した中での1つの文字との一致 |
# | 1つの数字との一致 |
前方一致
使用例 | 説明 | 抽出例 |
Like “み*” |
「み」で始まる文字を抽出 |
みかん みず |
Like “み?” | 「み」で始まる2文字を抽出 | みず みに |
Like “み?*” | 「み」で始まる2文字以上を抽出 |
みず |
Like “み#” |
「み」で始まり1つの数字で終わる2文字を抽出 |
み1 |
では実際にクエリを使って抽出してみましょう。
使用するテーブル
クエリを使用して抽出
クエリやコードで式を入力する時は半角と全角は区別されます。半角で入力しましょう。
後方一致
使用例 | 説明 | 抽出例 |
Like “*す” | 「す」で終わる文字を抽出 | いす いぎりす |
Like “?す” | 「す」で終わる2文字を抽出 | いす りす |
Like “?す*” | 「す」で終わる2文字以上を抽出 |
いぎりす |
Like “#す” |
1つの数字で始まり「す」で終わる2文字を抽出 |
1す |
クエリを使用して抽出
[quads id=2]
部分一致
使用例 | 説明 | 抽出例 |
Like “*りす*” | 「りす」が含まれる文字を抽出 | くりすます いぎりす りす |
クエリを使用して抽出
指定した文字を含まない
今までの条件は指定した文字を含む場合でしたが、指定した文字を含まないデータの抽出もできます。
使用例 | 説明 | 抽出例 |
Not Like “み*” | 「み」で始まらない文字を抽出 | いす いぎりす |
Not Like “*す” | 「す」で終わらない文字を抽出 | みかん みず |
Not Like “*す*” | 「す」が含まれない文字を抽出 |
いくら |
Like “[!か-け]*” | 「か」から「け」で始まらない文字を抽出 |
みかん |
応用編
今までの条件を「And」や「Or」を使って複数組み合わせることができます。
Andを使用する
使用例 | 説明 | 抽出例 |
Like “み*” And Like “*み” | 「み」で始まる文字とを抽出 | みずうみ |
Orを使用する
さっきはてな君が説明してくれました。はてな君はAndとOrを間違って覚えていたようですが・・・
「A Or B」だとAかBどちらかにあてはまるものを抽出してくれます。
使用例 | 説明 | 抽出例 |
Like “み*” Or Like “*す” | 「み」で始まる文字とを抽出 | みずうみ りす |
クエリで抽出
方法① 「抽出条件」に「Like “み*” 」を入力し、「または」に「Like “*す”」をそれぞれ別に入力する。
方法② 「抽出条件」に「Like “み*” Or Like “*す”」を入力する。
まとめ
Likeとワイルドカードを上手に使いこなせたら、とっても簡単にデータ検索ができるようになります。
ぜひぜひ活用してくださいね!