分享

SQL 嵌套查询

 昵称11935121 2018-07-14

说到嵌套查询,首先得理解嵌套查询是什么意思,简单来说就是,一个查询语句可以嵌套在另外一个查询语句的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表示存在,它只查找满足条件的记录

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多