可以使用子查询来实现从一个查询结果中再进行条件查询。
例如,假设有一个表格叫做“students”,其中包含学生的姓名(name)、年龄(age)和成绩(score)三个字段。现在我们想要查询出所有成绩大于80分的年龄在20岁以下的学生,可以使用以下SQL语句:
SELECT name, age, score
FROM students
WHERE score > 80 AND age < 20;
但是如果我们想要先查询出成绩大于80分的学生,然后再从这些学生中筛选出年龄在20岁以下的学生,可以使用子查询:
SELECT name, age, score
FROM (
SELECT *
FROM students
WHERE score > 80
) AS temp
WHERE age < 20;
在这个语句中,子查询(SELECT * FROM students WHERE score > 80)返回了成绩大于80分的所有学生,然后将其存储为临时表temp,最后再从temp表中筛选出年龄在20岁以下的学生。




