龙空技术网

SQL 嵌套查询

甜蜜氯化镁 1477

前言:

而今咱们对“嵌套查询”大致比较珍视,大家都想要了解一些“嵌套查询”的相关文章。那么小编同时在网络上搜集了一些对于“嵌套查询””的相关内容,希望兄弟们能喜欢,朋友们一起来学习一下吧!

说到嵌套查询,首先得理解嵌套查询是什么意思,简单来说就是,一个查询语句可以嵌套在另外一个查询语句的where子句中。外层的查询称为父查询(主查询),内层的查询称为子查询(从查询)。

嵌套查询的工作方式是由内向外的,即先进行内层查询,外层查询则利用内层查询的结果集作为条件进行查询。当然,嵌套查询不仅仅是select语句的专属,它还可以用在update、insert、delete语句中。如(update tablea A set A.userid = (select id from tableb where id = A.userid)),废话不多说,下面介绍几种常用的子查询。

(1)简单子查询

SELECT user_name FROM sys_user WHERE age > ( SELECT age FROM sys_user WHERE user_id = '1001' ),这句语句的意思是,从sys_user表查出年龄比user_id为1001大的user_name

(2) IN嵌套查询

SELECT user_name FROM sys_user WHERE city_id IN ( SELECT city_id FROM city WHERE city_name = '广州' ), in关键字用于where子句中用来判断查询的表达式是否在多个值的列表中。返回满足in列表中的满足条件的记录。

(3 )exists嵌套查询

SELECT * FRO sys_user WHERE EXISTS (SELECT * FROM sys_user WHER user_id = '1001'), exists表示存在,它只查找满足条件的记录

标签: #嵌套查询 #嵌套查询命令中的in相当于