学生选课系统,主要表有:学生基本信息表steudents(学号sid、姓名sname、性别ssex、专业spro、出生年月sbirthday等),选课表courses_selection(学号sid、课程号cid、分数score),课程表courses(课程号cid、课程名cname、所属专业professional、学分credits)要求: 写出SQL语句。 1) 查询所有选SQL课程的学生学号,姓名和专业。 2) 删除所有选择数学的同学的选课记录。 3) 查询有哪些课程没有被任何同学报选。
时间: 2023-06-11 07:04:11 浏览: 97
1)
SELECT students.sid, students.sname, students.spro
FROM students
JOIN courses_selection ON students.sid = courses_selection.sid
JOIN courses ON courses_selection.cid = courses.cid
WHERE courses.cname = 'SQL';
2)
DELETE
FROM courses_selection
WHERE cid IN (
SELECT cid
FROM courses
WHERE cname = '数学'
);
3)
SELECT cid, cname
FROM courses
WHERE cid NOT IN (
SELECT cid
FROM courses_selection
);
相关问题
Mysql创建学生表,表里数据包括:Sno学号,Sname姓名,Ssex性别,Sbirthdate出生日期,SHno所在学院
在MySQL中,你可以使用`CREATE TABLE`语句来创建一个名为“students”的学生表,包含上述字段。下面是一个创建该表的基本语法示例:
```sql
CREATE TABLE students (
Sno INT PRIMARY KEY, -- 学号,主键
Sname VARCHAR(50) NOT NULL, -- 姓名,最大长度50字符,不能为空
Ssex ENUM('男', '女') DEFAULT '男', -- 性别,枚举类型,默认值为'男'
Sbirthdate DATE, -- 出生日期,日期类型
SHno VARCHAR(50), -- 所在学院,最大长度50字符
FOREIGN KEY (SHno) REFERENCES Colleges(SHno) -- 可能需要外键约束,关联到"Colleges"表中的SHno
);
```
在这个例子中,我们假设存在一个名为“Colleges”的表,用于存储学院信息,且“SHno”也是一个字段。
用sql语句创建学生表:student(学号sno,学生姓名sname,出生年月sbirth,性别ssex)
你可以使用以下 SQL 语句创建一个名为 student 的学生表:
```sql
CREATE TABLE student (
sno INT PRIMARY KEY,
sname VARCHAR(255),
sbirth DATE,
ssex VARCHAR(10)
);
```
这个表包含了四个列:
- sno:学号,使用 INT 类型作为主键。
- sname:学生姓名,使用 VARCHAR(255) 类型存储学生姓名,长度为最大255个字符。
- sbirth:出生年月,使用 DATE 类型存储出生年月。
- ssex:性别,使用 VARCHAR(10) 类型存储性别信息,长度为最大10个字符。
在创建表后,你可以根据需要插入、更新或查询学生信息。记得根据实际需求进行数据类型的选择和合理的约束设置。
阅读全文