(1)简单子查询
示例:
select name,age from person
where age >
(
select age from person
where name = '孙权'
)
(2)in嵌套查询
in关键字用于where子句中用来判断查询的表达式是否在多个值的列表中。返回满足in列表中的满足条件的记录。
示例:
select name from person
where countryid in
(
select countryid from country
where countryname = '魏国'
)
(3)some嵌套查询
some在sql中的逻辑运算符号,如果在一系列比较中,有些值为True,那么结果就为True。some的语法是:
示例:
select name from person
where countryid = some
(
select countryid from country
where countryname = '魏国'
)
(4)all嵌套查询
all是sql中的逻辑运算符好,如果一系列的比较都为true,那么结果才能为true。
示例:
select name from person
where countryid > all
(
select countryid from country
where countryname = '魏国'
)
(5)exists嵌套查询
exists是sql中的逻辑运算符号。如果子查询有结果集返回,那么就为True。exists代表“存在”的意义,它只查找满足条件的那些记录。一旦找到第一个匹配的记录后,就马上停止查找。
exists 子查询
其中子查询是一个首先的select语句,不允许有compute子句和into关键字。
exists 的意思是,子查询是否有结果集返回。