SQL練習問題 – 問24


SQLの練習問題です。

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

  • MariaDB 5.5.48
  • MySQL Workbench 6.3

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

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

※データの誤りがありましたので、既にインポートされた方も改めて再インポートをお願いします。※ 2016/07/15


問題:身長の高い選手6位~20位を抽出し、以下の項目を表示してください。

・名前
・身長
・体重

WS000017

正解:

SELECT name, height, weight
FROM players
ORDER BY height DESC
LIMIT 5, 15

LIMITを用いるやや応用的なSQLです。
LIMIT句の使い方

LIMIT [offset,] row_count

LIMIT句はこのようにカンマ区切りで値を2つ指定すると、抽出するデータのスタート位置を指示することができます。
正当例のように5を指定すると、6位(6行目)から表示となります。これはゼロから数えはじめ、ゼロが1行目を表すからです。
2つ目の値は前問と同じように表示する行数を表し、今回は6位~20位の15選手を抽出する必要がありますので15となります。

このような開始行数を指定するLIMIT句は実際に業務システムを作る際に、一覧画面のページ遷移機能でよく使用されます。

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

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

PAGE TOP