可以使用以下 SQL 语句查询所有不比“电子工程”系的所有学生年龄大的其他系的学生信息:
```
SELECT *
FROM students
WHERE age > (
SELECT age
FROM students
INNER JOIN departments ON students.department_id = departments.id
WHERE departments.name = '电子工程'
)
AND department_id != (
SELECT id
FROM departments
WHERE name = '电子工程'
);
```
解释一下这个 SQL 语句:
1. 首先在 departments 表中查找出“电子工程”系的 ID。
2. 然后在 students 表中筛选出年龄大于“电子工程”系学生的其他系学生信息。这里使用了两个子查询:
- 第一个子查询使用 INNER JOIN 连接 students 表和 departments 表,以便获取“电子工程”系学生的年龄。
- 第二个子查询直接查找出“电子工程”系的 ID。
3. 最后使用 AND 连接两个条件,确保筛选出来的学生既年龄大于“电子工程”系学生,又不属于“电子工程”系。