LIKE とは
- ここで説明する LIKE とは次の語句からなる SQL の演算子です。
- like
- 読み: ライク
意味: 同類、同士、~のようだ、似ている
LIKE 演算子の概要
この演算子は、比較文字を使った単純なパターンマッチングを行います。
パターンにマッチすれば TRUE ( 1 ) を、マッチしなければ FALSE ( 0 ) を返します。
サンプル テーブルの構造
データ抽出用のサンプルテーブルが必要でしたので事前に作成しています。
ここではテーブル作成までのクエリを簡易的に書いておきます。
現在、データベースにはサンプルとして以下に示す構造の japan テーブルを作成しており、 そのテーブルに 47都道府県のデータを登録した状態になっています。
サンプルコード: テーブルの作成
サンプルテーブルを以下のクエリで作成しました。
CREATE TABLE japan(
県番号 int(11),
都道府県 varchar(10),
県庁所在地 varchar(10),
地方 varchar(10)
);
カラム1 (県番号) | カラム2 (都道府県) | カラム3 (県庁所在地) | カラム4 (地方) |
---|---|---|---|
データ | データ | データ | データ |
データ | データ | データ | データ |
サンプルコードと実行結果
ここからは実際に稼働しているデータベースに接続してクエリを実行していきます。 下記に配置された各ボタンをクリックすると、ボタンに書かれているサンプルクエリを実行して結果を表示します。
サンプルコード: SQL (SELECT 文の基本的な使い方)
SELECT * FROM テーブル名;
これはテーブルデータを抽出するための基本構文です。
指定したテーブルのデータを全件、全フィールドで抽出します。
この単純なクエリはデータ量が少ない場合や開発段階では利用することが多いと思いますが、実際の運用では使いません。
サンプルコード: SQL (LIKE 演算子を使いワイルドカード検索する)
SELECT * FROM テーブル名 WHERE カラム名 LIKE 比較文字列;
説明:
都道府県フィールドに LIKE 演算子で '%岡%' を指定しています。
これにより、都道府県フィールドの値に '岡' が含まれるレコードを抽出します。
'岡%' とすれば 岡 から始まるレコードが該当し、'%岡' とすれば 岡 で終わるものが該当します。
説明:
都道府県フィールドに LIKE 演算子で '_岡_' を指定しています。
これにより、都道府県フィールドの値に '岡' の前後に 1字含まれるレコードを抽出します。
'岡_' とすれば 岡 の後に何か 1字含まれるレコードが該当し、'_岡' とすれば 岡 の前に何か 1字含まれるものが該当します。