SQL練習問題 – 問47

この記事は2017年3月26日に書かれたものです。内容が古い可能性がありますのでご注意ください。


SQLの練習問題です。

筆者の環境は以下となっていますが、別のデータベースやツールでもほとんど同じように動作すると思います。

  • MariaDB 5.5.48
  • MySQL Workbench 6.3

よくわからないという方は、XAMPをインストールすると簡単に筆者と同じ環境を構築できます。以下のサイトで紹介されています。
WINDOWS XAMPP にて LARAVEL をインストール (XAMPP V1.8.3インストール)

問題として使用するデータは以下からダウンロード可能です。phpMyAdminからデータベース(worldcup2014)を作成しインポートしておいてください。
worldcup2014.zip


問題:
全ての選手のポジションの1文字目(GKであればG、FWであればF)を出力してください。


正解:

SELECT id, country_id, uniform_num, SUBSTRING(position, 1, 1), name
FROM players


このような1行のデータをそのまま1行で出力する関数を「単一行関数」といいます。(他にもグループ関数というものもあります)
その単一行関数の中でも今回は文字列を操作する関数になります。
「SUBSTRING」もしくは「SUBSTR」を関数を使用することで文字列のXX文字目からXX文字を切り抜くことができます。
問題では1文字目を1文字切り抜けばよいことになりますので、「SUBSTRING(position, 1, 1)」となります。

そのほかの使用方法に関しては公式のマニュアルがありますので、こちらを参照してください。
https://dev.mysql.com/doc/refman/5.6/ja/string-functions.html#function_substr

← SQL練習問題 一覧まとめに戻る

  • このエントリーをはてなブックマークに追加

PAGE TOP