SQL 子查询:将第一个查询结果用作第二个查询条件

使用子查询的方式,可以将第一个语句的查询结果作为第二个语句的条件进行查询。这在需要根据先前的查询结果进行筛选时非常有用。

示例:

假设有两个表:

  • 表1: employee

| id | name | age | |----|-------|-----| | 1 | Alice | 25 | | 2 | Bob | 30 | | 3 | Cathy | 35 |

  • 表2: salary

| id | employee_id | amount | |----|------------|--------| | 1 | 1 | 5000 | | 2 | 2 | 6000 | | 3 | 3 | 7000 |

现在需要查询年龄大于等于 30 岁的员工的薪水。

第一步:先查询年龄大于等于 30 岁的员工:

SELECT id FROM employee WHERE age >= 30;

查询结果为:

| id | |----| | 2 | | 3 |

第二步:将上述查询结果作为子查询,作为条件查询薪水表:

SELECT amount FROM salary WHERE employee_id IN (SELECT id FROM employee WHERE age >= 30);

查询结果为:

| amount | |--------| | 6000 | | 7000 |

这样,就可以根据第一个语句的查询结果待入到第二个语句查询了。

总结:

子查询可以帮助我们构建更复杂的查询,通过将一个查询的结果作为另一个查询的条件,实现更灵活的数据筛选。

SQL 子查询:将第一个查询结果用作第二个查询条件

原文地址: https://www.cveoy.top/t/topic/mV3r 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录