sql语句查询没有被任何人选修的课程名
时间: 2023-07-01 15:21:13 浏览: 68
可以使用如下 SQL 语句查询没有被任何人选修的课程名:
```sql
SELECT course_name
FROM course
WHERE course_id NOT IN (
SELECT course_id
FROM course_selection
)
```
这个查询语句中,`course` 表包含课程信息,包括 `course_id` 和 `course_name`;`course_selection` 表包含选课信息,包括 `course_id` 和 `student_id`。查询语句使用子查询 `SELECT course_id FROM course_selection` 找到所有被选修的课程,然后在 `course` 表中查找没有在这个子查询的结果中出现过的课程名。
相关问题
SQL语句查询姓张学生选修的课程号课程名
假设学生表为students,选课表为course_selections,课程表为courses,可以使用如下SQL语句查询姓张学生选修的课程号和课程名:
```
SELECT courses.course_id, courses.course_name
FROM students
INNER JOIN course_selections ON students.student_id = course_selections.student_id
INNER JOIN courses ON course_selections.course_id = courses.course_id
WHERE students.student_name LIKE '张%';
```
注:该查询语句是基于以下假设:学生表中的学生姓名字段为student_name,课程表中的课程编号字段为course_id,课程名称字段为course_name,选课表中的学生编号字段为student_id,选课表中的课程编号字段为course_id。如果这些字段名不一样,需要根据实际情况做出相应的修改。
用sql语句查询年龄最小的学生选修的课程名
好的,以下是查询年龄最小的学生选修的课程名的 SQL 语句:
```
SELECT course_name FROM courses
WHERE course_id IN (
SELECT course_id FROM student_courses
WHERE student_id = (
SELECT student_id FROM students
ORDER BY age ASC
LIMIT 1
)
);
```
这个 SQL 语句将会返回年龄最小的学生选修的课程名。请注意,这个查询假设所有的学生都已经选修了至少一门课程,并且没有两个学生拥有相同的最小年龄。