SQLでは、膨大なデータが管理されているデータベースを扱うため、様々なデータを取得して分析することができます。
ここでは、MySQLでLIKE演算子を活用したデータ取得について簡単に解説します。
【この記事はこんな方に向けて書いています】
・SQLの勉強をしてデータベースを扱ってみたい
・MySQLでLIKE演算子を使って「○○を含むデータ」を取得したい
【目次】
・LIKE演算子
・雑貨店の商品をテーブルに追加
・ワイルドカード
・「○○ボール」を取得
・「バスケット○○」を取得
・「ボール」を含むデータを取得
・NOT LIKE
・まとめ
LIKE演算子を使うと、指定したキーワードを含むデータを取得することができます。
例えば
・サッカーシューズ
・サッカーボール
・バスケットボール
上記3つが格納されているデータベースから「○○ボール」というデータだけ取得したいような場合にLIKE演算子を使います。
様々な商品を扱う雑貨店を例に、LIKE演算子の使い方を簡単に解説します。
雑貨店には様々な商品があります。
なので商品名もバラバラなのではないでしょうか?
ここではデータベースの中にテーブル「items」を作成し、10個の商品情報を追加しました。
このように、テーブル「items」に様々な種類の商品が10個あります。
ワイルドカードとは、「○○を含むデータ」を取得する時に使う記号です。
ワイルドカードには「%」や「_」があります。
ここでは実際にワイルドカード「%」を使いながら「○○を含むデータ」を取得してみます。
テーブル「items」から、「○○ボール」のデータを取得します。
「○○ボール」のデータを取得する時は
SELECT * FROM テーブル名
WHERE カラム名 LIKE '%ボール';
と記述してEnterを押します。
「○○ボール」のデータが取得できました。
3件の商品が該当したようです。
テーブル「items」から、「バスケット○○」のデータを取得します。
「バスケット○○」のデータを取得する時は
SELECT * FROM テーブル名
WHERE カラム名 LIKE 'バスケット%';
と記述してEnterを押します。
「バスケット○○」のデータを取得できました。
2件の商品が該当したようです。
テーブル「items」から、「ボール」を含むデータを取得します。
「○○ボール」と「ボール○○」両方のデータを取得したい時に効果的です。
「ボール」を含むデータを取得する時は
SELECT * FROM テーブル名
WHERE カラム名 LIKE '%ボール%';
と記述してEnterを押します。
「ボール」を含むデータを取得できました。
4件の商品が該当したようです。
NOT LIKEを使うと、「○○を含まない」データを取得できます。
テーブル「items」から、「ボール」を含まないデータを取得します。
「ボール」を含まないデータを取得する時は
SELECT * FROM テーブル名
WHERE カラム名 NOT LIKE '%ボール%';
と記述してEnterを押します。
「ボール」を含まないデータを取得できました。
6件の商品が該当したようです。
まとめ
・LIKE演算子を使うと指定キーワードを含むデータを取得できる
・指定キーワードを含むデータを取得する時はワイルドカードを使う
・NOT LIKEを使うと「○○を含まない」データを取得できる
ここまで読んで頂きありがとうございました。
-------------------------------------------------------------------------------------
【関連記事】
SQLの環境構築「MySQL」
SQLの基礎:「MySQLの起動」
-------------------------------------------------------------------------------------
当ブログの記事一覧(カテゴリー別)