美文网首页MySQL
(十二)子查询

(十二)子查询

作者: 一条IT | 来源:发表于2019-03-24 15:15 被阅读16次

子查询需用括号包裹。

from型

from后要求是一个表,必须给子查询结果取个别名。
  • 简化每个查询内的条件。
    • from型需将结果生成一个临时表格,可用以原表的锁定的释放。
    • 子查询返回一个表,表型子查询。
    select * from (select * from tb where id>0) as subfrom where id>1;

where型

  • 子查询返回一个值,标量子查询。
  • 不需要给子查询取别名。
  • where子查询内的表,不能直接用以更新。
    select * from tb where money = (select max(money) from tb);
  • 列子查询
    如果子查询结果返回的是一列。
    使用 in 或 not in 完成查询
    exists 和 not exists 条件
    如果子查询返回数据,则返回1或0。常用于判断条件。
            select column1 from t1 where exists (select * from t2);
  • 行子查询
    查询条件是一个行。
        select * from t1 where (id, gender) in (select id, gender from t2);
    行构造符:(col1, col2, ...) 或 ROW(col1, col2, ...)
    行构造符通常用于与对能返回两个或两个以上列的子查询进行比较。

特殊运算符:

    != all()    相当于 not in
    = some()    相当于 in。any 是 some 的别名
    != some()   不等同于 not in,不等于其中某一个。
    all, some 可以配合其他运算符一起使用。

相关文章

  • (十二)子查询

    子查询需用括号包裹。 from型 简化每个查询内的条件。from型需将结果生成一个临时表格,可用以原表的锁定的释放...

  • Oracel_子查询

    SQL子查询 子查询语法 子查询 (内查询) 在主查询之前一次执行完成。 子查询的结果被主查询(外查询)使用 。 ...

  • Oracle | 子查询和伪列

    1. 子查询 (1)单行子查询 (2)多行子查询 1)ANY子查询 2)ALL 子查询 2. 伪列...

  • 《SQL必知必会》第 11 课 使用子查询

    目标: 11.1 子查询 11.2 利用子查询进行过滤 11.3 作为计算字段使用子查询 11.1 子查询 查询(...

  • MySQL 子查询

    什么是子查询 为什么要使用子查询 子查询的分类 怎样使用子查询 关联子查询 要使用的数据表 1. 什么是子查询? ...

  • 数据库第七天

    子查询 查询里面还有查询注意: 子查询优先于主查询执行 最好子查询用括号 查询比ALLEN工资高的员工信息 单行子...

  • SQL查询_高级查询

    SQL查询_高级查询 一、子查询 子查询出现的位置一般为条件语句,oracle会先执行子查询,再执行父查询,子查询...

  • 17/12/6 子查询

    17/12/6 子查询 单行子查询 括号内的查询叫做子查询,也叫内部查询,先于主查询的执行。 子查询可以嵌入1.w...

  • MySql(七)子查询与虚表

    一、子查询 子查询在主查询前执行一次 主查询使用子查询的结果 子查询要用括号括起来 将子查询放在比较运算符的右边 ...

  • 数据分析之SQL子查询

    文章阅读路线: SQL子查询概念 独立子查询实例 相关子查询实例 SQL子查询常见玩伴 1.SQL子查询概念 子查...

网友评论

    本文标题:(十二)子查询

    本文链接:https://www.haomeiwen.com/subject/dzsuvqtx.html