补充:PostgreSQL 的子查询 相关的知识 ,exists,any,all
Subquery有了子查询,在设定 需要查询表才能得到 查询条件时,就可以 直接 在一条语句中 写,不用分开多条写了,方便了许多。
子查询返回多条时,可以在 where 子句中 用 IN,来匹配查询条件。
EXISTS 操作符在 where 子句的 查询条件中,exists 操作符,会在子查询有返回行时,返回true;不论返回几行。
因此,子查询中的查询字段仅写1就好;标准的写法:EXISTS (SELECT 1 FROM tbl WHERE condition)
NO EXISTS ,与之相反,当子查询返回0行时,返回true
当子查询返回 NULL,会返回true, 也就是返回所有行。
ANY与任何子查询返回的 值 匹配就 返回 true
expresion operator ANY(subquery)
表达式一般为 字段
操作符为 >,<,=,<>,>=,<=
ANY 可以与 SOME 替换
子查询 返回的 必须是 一列,
The = ANY is equivalent to IN operator.
Note that the <> ANY operator is different from NOT IN. The following expression:
is equivalent to
ALL所有子查询返回的值 匹配 则 返回 true
也就是 大于最大,小于最小
以上为个人经验,希望能给大家一个参考,也希望大家多多支持七叶笔记。如有错误或未考虑完全的地方,望不吝赐教。