数据库多表查询完成代码(1)查询指定班级(班级id为1)的所有同学信息(student_id,student.name,gender,class_name,year,department_name),并按学号升序排列。 (2)按学院汇总教师人数。显示学院编号和教师人数。
时间: 2024-10-14 13:01:54 浏览: 54
数据库多表查询.docx
首先,假设我们有两个表格:`Students` 存储学生信息(包含 student_id, name, gender, class_id, year, department_id 等字段)和 `Teachers` 存储教师信息(包含 teacher_id, class_id 等字段)。下面是对这两个查询的 SQL 代码:
(1)查询指定班级的同学信息:
```sql
SELECT s.student_id, s.name, s.gender, s.class_name, s.year, d.department_name
FROM Students s
JOIN Departments d ON s.department_id = d.department_id
WHERE s.class_id = 1
ORDER BY s.student_id ASC;
```
这个查询将 `Students` 表和 `Departments` 表通过部门ID关联起来,选择班级ID为1的学生信息,并按学号升序排序。
(2)按学院汇总教师人数:
```sql
SELECT d.department_id AS '学院编号', COUNT(t.teacher_id) AS '教师人数'
FROM Teachers t
JOIN Departments d ON t.class_id = d.department_id
GROUP BY d.department_id;
```
这个查询首先通过 `class_id` 关联 `Teachers` 和 `Departments` 表,然后对每个学院(department_id)进行分组,计算每个学院的教师数量。
阅读全文