Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ チャレンジ:トップ数学学生の検索 | グループ化
中級SQL
セクション 1.  5
single

single

チャレンジ:トップ数学学生の検索

メニューを表示するにはスワイプしてください

学校はあなたの働きに満足しており引き続き協力を続けることに同意しました。

今回は新たな課題が与えられました。平均成績が最も高い上位10名の生徒に、報酬として科学センターへの旅行が提供されます。ただし、数学の試験で90点以上を取得していることが必須条件です。このような生徒を見つけるために、あなたに依頼が来ました。

この課題を、employeeテーブルを例にして確認してみましょう。

例えば、2019年以前に雇用された従業員がいる部署と、その部署の平均給与を調べる必要があるとします。このような課題を実装するには、次のクエリを使用できます。

1234
SELECT department, AVG(salary) AS average_salary FROM employees WHERE hire_date < '2019-01-01' GROUP BY department

ご覧の通り、該当する従業員は3名のみであり、必要なツールを使ってこの結果を得ることができました。

タスク

スワイプしてコーディングを開始

数学の試験で少なくとも1回90点以上を取得した学生を最大10人まで抽出してください。これらの学生について、数学のみの成績の平均を計算します。結果はこの平均(average_gradeという別名を付ける)で降順に並べ替えてください。

簡単な手順

  • student_surnameと、grade関数を使ってAVG()列の平均を選択します。
  • 2列目にはaverage_gradeという別名を付けます。
  • まず、数学の成績が1回でも90点以上の学生を特定します。
  • 平均を計算する際は数学の成績のみを対象とします。
  • 結果はstudent_surnameでグループ化します。
  • average_gradeで降順に並べ替えます。
  • LIMIT 10を使って10件のみ返します。

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  5
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt