PostgreSQL 子查询

子查询嵌套在主查询中:可用于 WHERE(IN/EXISTS/比较)、FROM(派生表)与 SELECT 列位置。

Intermediate
Key PointsPostgreSQL,子查询,EXISTS,IN,派生表

讲解

子查询嵌套在主查询中:可用于 WHERE(IN/EXISTS/比较)、FROM(派生表)与 SELECT 列位置。

示例

SQL
SELECT name FROM company
WHERE id IN (SELECT person FROM orders WHERE amount > 100);

SELECT c.name, t.total
FROM company c
JOIN (SELECT person, sum(amount) AS total FROM orders GROUP BY person) t
  ON t.person = c.id;
Output
 name | total
------+-------
 Tom  | 120.00

Friends & Partners