🤖
🔰SQL練習用のサンプルデータ - students -
この記事では、🔰SQL練習用のサンプルデータ - students -をご紹介します。
このサンプルデータでは、3つ以上のテーブル結合のSQL練習ができますので、よかったら、ご使用ください🙌
サンプルデータ
teacher_id | teacher_name |
---|---|
101 | 寺内鞍 |
102 | 田尻朋美 |
103 | 内村海凪 |
student_id | student_name |
---|---|
301 | 黒沢春馬 |
302 | 新垣愛留 |
303 | 柴崎春花 |
304 | 森下風凛 |
305 | 河口菜恵子 |
306 | 河田咲奈 |
307 | 織田柚夏 |
308 | 永田悦子 |
309 | 相沢吉夫 |
310 | 吉川伽羅 |
course_id | course_name | teacher_id |
---|---|---|
1 | ITのための基礎知識 | 101 |
2 | UNIX入門 | 102 |
3 | Cプログラミング演習 | 101 |
course_id | student_id |
---|---|
1 | 301 |
1 | 302 |
1 | 303 |
1 | 306 |
1 | 307 |
1 | 308 |
1 | 310 |
2 | 301 |
2 | 309 |
3 | 310 |
SQL
--------------------------------------
-- 教師テーブル
---------------------------------------
DROP TABLE IF EXISTS teachers;
CREATE TABLE teachers (
teacher_id BIGINT PRIMARY KEY
, teacher_name VARCHAR(64)
);
INSERT INTO teachers VALUES (101,'寺内鞍');
INSERT INTO teachers VALUES (102,'田尻朋美');
INSERT INTO teachers VALUES (103,'内村海凪');
SELECT * FROM teachers;
---------------------------------------
-- 学生テーブル
---------------------------------------
DROP TABLE IF EXISTS students;
CREATE TABLE students (
student_id BIGINT PRIMARY KEY
, student_name VARCHAR(64)
);
INSERT INTO students VALUES (301,'黒沢春馬');
INSERT INTO students VALUES (302,'新垣愛留');
INSERT INTO students VALUES (303,'柴崎春花');
INSERT INTO students VALUES (304,'森下風凛');
INSERT INTO students VALUES (305,'河口菜恵子');
INSERT INTO students VALUES (306,'河田咲奈');
INSERT INTO students VALUES (307,'織田柚夏');
INSERT INTO students VALUES (308,'永田悦子');
INSERT INTO students VALUES (309,'相沢吉夫');
INSERT INTO students VALUES (310,'吉川伽羅');
SELECT * FROM students;
---------------------------------------
-- 講座テーブル
---------------------------------------
DROP TABLE IF EXISTS courses;
CREATE TABLE courses (
course_id VARCHAR(16) PRIMARY KEY
, course_name VARCHAR(128) NOT NULL
, teacher_id BIGINT
, FOREIGN KEY (teacher_id) REFERENCES teachers(teacher_id)
);
INSERT INTO courses VALUES (1,'ITのための基礎知識',101);
INSERT INTO courses VALUES (2,'UNIX入門',102);
INSERT INTO courses VALUES (3,'Cプログラミング演習',101);
SELECT * FROM courses;
---------------------------------------
-- 受講テーブル
---------------------------------------
DROP TABLE IF EXISTS student_courses;
CREATE TABLE student_courses (
course_id VARCHAR(16)
, student_id BIGINT
, FOREIGN KEY (course_id) REFERENCES courses(course_id)
, FOREIGN KEY (student_id) REFERENCES students(student_id)
, PRIMARY KEY (course_id, student_id)
);
INSERT INTO student_courses VALUES (1,301);
INSERT INTO student_courses VALUES (1,302);
INSERT INTO student_courses VALUES (1,303);
INSERT INTO student_courses VALUES (1,306);
INSERT INTO student_courses VALUES (1,307);
INSERT INTO student_courses VALUES (1,308);
INSERT INTO student_courses VALUES (1,310);
INSERT INTO student_courses VALUES (2,301);
INSERT INTO student_courses VALUES (2,309);
INSERT INTO student_courses VALUES (3,310);
SELECT * FROM student_courses;
SQLを実行できるWebアプリはこちら → DB Fiddle
動作確認済み
- SQLite 3.39
- MySQL 8.0
- PostgreSQL 15
おわりに
この記事では、🔰SQL練習用のサンプルデータ - students -をご紹介しました。
このサンプルデータでは、3つ以上のテーブル結合のSQL練習ができますので、よかったら、ご使用ください🙌
この記事は、下記の海外サイトを参考にさせて頂きました。ありがとうございました。
Discussion