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

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

学校はあなたの仕事に満足しており協力を継続することに同意しました

今回は新たな課題が与えられました。平均成績が最も高い上位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.  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