トップDML選択(基本) ≫ ワイルドカードを使用してレコードを検索する

ワイルドカードを使用してレコードを検索する

ワイルドカードを使用してレコードを検索するにはLIKE句を使用します. ワイルドカードを使用することであいまいな文字列検索を行うことができます.

LIKE

LIKE句の基本構文は以下のようになります.

SELECT 列名1 ,列名2, ...
FROM テーブル名
WHERE 列名 LIKE {ワイルドカード}

ワイルドカード

LIKE句で使用可能なワイルドカードは以下の通りです.

ワイルドカード意味
%0文字以上の任意の文字列
_任意の1文字

SQL サンプル

例として以下のテーブル(従業員マスタ)からワイルドカード'%'と'_'を使用してそれぞれ従業員を検出します.

従業員

従業員コード従業員名年齢
A0001チャーリー・ブラウン19
A0002ルシール・ヴァン・ぺルト20
A0003ライナス・ヴァン・ぺルト21
B0001シュローダー29
B0002ペパーミント・パティ30
B0003マーシー31

ワイルドカード'%'を使用したSQLの例

従業員名が 'ヴァン・ぺルト' で終わる従業員を検索します.

SQL

SELECT * FROM 従業員
WHERE 従業員名 LIKE '%ヴァン・ぺルト'

結果

従業員コード従業員名年齢
A0002ルシール・ヴァン・ぺルト20
A0003ライナス・ヴァン・ぺルト21

ワイルドカード'_'を使用したSQLの例

'A000' + 任意の一文字の従業員コードを持つ従業員を検索します.

SQL

SELECT * FROM 従業員
WHERE 従業員コード LIKE 'A000_'

結果

従業員コード従業員名年齢
A0001チャーリー・ブラウン19
A0002ルシール・ヴァン・ぺルト20
A0003ライナス・ヴァン・ぺルト21

注意.
サンプルで使用するテーブルは説明のため正規化を行っていなかったり,一般的でない列が含まれている場合があります.ご容赦ください.