【SQL】 LIKE演算子の使い方(パターンマッチングを行う)
LIKE演算子は、以下で使用できます。
ORACLE MS-SQL MS-Access
LIKE演算子 : 書式
<式> LIKE <検索条件>
LIKE演算子 : 解説
LIKE演算子は、パターンマッチングを行うことができます。LIKE演算子では検索条件にメタ文字と呼ばれるもので、さまざまな指定方法を使って検索を行います。メタ文字には次のようなものがあります。
メタ文字
メタ文字 | ORACLE | MS-SQL | MSAccess |
任意の文字列 | % | % | * |
任意の1文字 | _ | _ | ? |
このメタ文字を組合せたパターンで、LIKE演算子の前に指定された文字列に対して検索を行っていきます。パターンマッチをした結果、パターンを検出すると真を返します。パターンについては、こちらを参照してください。
【SQLの基礎知識⑧】 文字列検索(ワイルドカードの使い方)
SQLにおける文字列検索のやり方を習得できます。ワイルドカードとLIKEキーワードの具体的・実践的な使用方法を解説したうえで、SQL文に対する実行結果を確認することで、理解を深めます。いちれべ.comは、オラクル、MS-SQL、MS-Access で使用可能か一目でわかるサイトです。
LIKE演算子 : 使用例 ①
まずは、任意の文字列にマッチする「%」を用いて、商品名の最後に「うさぎ」という文字列が存在するものを検索します。このとき「うさぎ」の前の文字が何文字であっても、全てにマッチします。
SQL文 SELECT * FROM 商品一覧 WHERE 商品名 LIKE '%うさぎ';
実行結果
商品コード | 商品名 | カテゴリ | 単価 |
---|---|---|---|
USA-0012 | 眠いうさぎ | ぬいぐるみ | 9800 |
USA-1011 | だれうさぎ | きぐるみ | 5000 |
表:商品一覧
商品コード | 商品名 | カテゴリ | 単価 |
USA-0012 | 眠いうさぎ | ぬいぐるみ | 9800 |
USA-1011 | だれうさぎ | きぐるみ | 5000 |
EDU-0012 | うさぎ算 | 知能玩具 | 1800 |
GAM-0004 | 子うさぎクエスト | ゲーム | 6800 |
OOK-1001 | 舌の出た狼 | きぐるみ | 5200 |
LIKE演算子 : 使用例 ②
次に、1文字にマッチする「_」を用いて「カテゴリ」列の中で「ぐるみ」で終わるもの検索します。このとき「ぐるみ」の前は「_」なので、1文字しかマッチしません。
SQL文 SELECT * FROM 商品一覧 WHERE カテゴリ LIKE '_ぐるみ';
実行結果
商品コード | 商品名 | カテゴリ | 単価 |
---|---|---|---|
USA-1011 | だれうさぎ | きぐるみ | 5000 |
OOK-1001 | 舌の出た狼 | きぐるみ | 5200 |
LIKE演算子 : 使用例 ③
最後は、「%」、「_」を組合せたパターンです。うまく組合せることにより、さまざまなパターンを作り上げることができます。
SQL文 SELECT * FROM 商品一覧 WHERE 所品コード LIKE 'U%-_012';
実行結果
商品コード | 商品名 | カテゴリ | 単価 |
---|---|---|---|
USA-0012 | 眠いうさぎ | ぬいぐるみ | 9800 |
関連リンク
一覧ページ
SQLリファレンス > 演算子
演算子によって列に対する様々な演算が行えます。このページは、使用できる演算子の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。
SQLリファレンス > 関数
ORACLE、MS-SQL Server、MS-Access、MySQLで使用する関数の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。