SQLの練習問題です。
筆者の環境は以下となっていますが、別のデータベースやツールでもほとんど同じように動作すると思います。
- MariaDB 5.5.48
- MySQL Workbench 6.3
よくわからないという方は、XAMPをインストールすると簡単に筆者と同じ環境を構築できます。以下のページで紹介されています。
【PHP入門】環境構築
問題として使用するデータは以下からダウンロード可能です。phpMyAdminからデータベース(worldcup2014)を作成しインポートしておいてください。
worldcup2014.zip
問題:
名前の中に「ニョ」が含まれるプレイヤーを抽出してください。
正解:
SELECT * FROM players WHERE name LIKE '%ニョ%'
「選択」を行うSQLの別のバリエーションです。「=」を使った条件設定では完全一致するデータしか抽出することができませんが、「LIKE」演算子を使用すると部分一致のあいまい検索をすることができます。LIKE演算子では、「%」を一緒に使用します。今回のようにname列の値のどこかに「ニョ」が含まれているというような前方後方一致検索の場合には、「ニョ」の前後両方に%記号を付けます。%記号は「’」(シングルクォート)の中に記述します。
このLIKE演算子を使った前方後方一致検索機能は、システム開発時にも非常によく使われる構文となりますので、確実に押さえておきましょう。
連載目次リンク
関連する連載リンク
WEBアプリケーション関連 人気連載リンク
データベースの基礎が学べるSQL基礎講座
SQL基礎 連載
より実践的なWEBアプリ開発講座!Bootstrap活用を学ぶなら・・
魁!小野の塾 連載