生成AIで架空のポケモンを作るためのデータベースを作る過程で必要になったSQLについて学んでいます。今回はSELECT文から。ChatGPTに作らせた問題を解いています。
入力:SQLのSELECT分の理解度を確認するための練習問題を作ってください
出力:
もちろんです。以下にSQLのSELECT文の理解度を確認するための練習問題を作成しました。それぞれの問題には異なる難易度の質問を含めています。
練習問題
問題1: 基本的なSELECT文
以下のemployees
テーブルから全てのカラムを選択するSQL文を書いてください。
employeesテーブル
employee_id | first_name | last_name | department | salary |
---|---|---|---|---|
1 | John | Doe | HR | 50000 |
2 | Jane | Smith | IT | 60000 |
3 | Michael | Brown | Finance | 55000 |
4 | Emily | Davis | Marketing | 52000 |
質問1.1: 全てのカラムを選択するSQL文を作成してください。
問題2: WHERE句の使用
以下のemployees
テーブルから、部門がITの従業員を選択するSQL文を書いてください。
質問2.1: 部門がITの従業員を選択するSQL文を作成してください。
問題3: 集約関数の使用
以下のemployees
テーブルから、全従業員の平均給与を計算するSQL文を書いてください。
質問3.1: 全従業員の平均給与を計算するSQL文を作成してください。
問題4: GROUP BY句の使用
以下のemployees
テーブルから、部門ごとの平均給与を計算するSQL文を書いてください。
質問4.1: 部門ごとの平均給与を計算するSQL文を作成してください。
問題5: ORDER BY句の使用
以下のemployees
テーブルから、給与が高い順に全従業員をリストするSQL文を書いてください。
質問5.1: 給与が高い順に全従業員をリストするSQL文を作成してください。
回答例
回答1.1:
SELECT * FROM employees;
回答2.1:
SELECT * FROM employees WHERE department = 'IT';
回答3.1:
SELECT AVG(salary) FROM employees;
回答4.1:
SELECT department, AVG(salary) FROM employees GROUP BY department;
回答5.1:
SELECT * FROM employees ORDER BY salary DESC;
これらの練習問題を通じて、SELECT文の基本的な構造やWHERE句、集約関数、GROUP BY句、ORDER BY句の使い方を学ぶことができます。
基本的な問題のため、特につまずくところなし。見た感じ教材の内容で練習問題にないものがあるので、SELECT分の問題演習はもう少し続けよう。
次回に続く