1单值(Scalar operand)

只有当外层(Parent)不为空时,才返回相应值;否则返回NULL。

note:For the subquery just shown, if t1 were empty, the result would be NULL even though s2 is NOT NULL.

2 用于操作符比较

[14.2.10.2 Comparisons Using Subqueries]

non_subquery_operand comparision_operator (subquery)

the comparision_operator is :=,>,>=,<,<=,!=,like ,<=>[和=功能相似,也可用于NULL值比较]

3 使用IN,ANY,SOME

operand comparison_operator ANY (subquery)

operand IN (subquery)

operand comoparison_operator SOME (subquery)

where comparison_operator is one of these operators:=,>, >=,<,<=,<>,!=

ANY,说明任何一个。只要右侧操作数中的任一个满足操作数条件,就为true.[ANY (不能是常量值)]

IN,包含[可以有常量值,多个用","分隔]。

SOME 与ANY 在功能上等价,只是在日常语法上不同。

4,使用ALL

operand comparison_operator ALL (subquery)

满足所有,才返回true.

5, 行子查询[Row subqueries]

值或列子查询(如上所示)返回一个值或符合条件的一列值;行子查询返回一行数据,可能有多个列;行子查询的合法操作符为:

=,>,<,>=,<=,<>,!=,<=>

只有多列同时满足操作符才返回true,否则为false or NULL.

6,使用 EXISTS OR NOT EXISTS

当子查询返回有数据时,EXISTS subquery 为true,AND NOT EXISTS subquery 为false.

7,关联子查询

是含有对外层查询有引用的查询。

8 用于From子句

9.子查询错误

10,优化子查询

【Development is ongoing,so no optimization tip is reliable for the long term.】开发正在进行时,从长期发展看没有可靠的优化技巧。

Mysql子查询的更多相关文章

  1. [慢查优化]慎用MySQL子查询,尤其是看到DEPENDENT SUBQUERY标记时

    案例梳理时间:2013-9-25 写在前面的话: 在慢查优化1和2里都反复强调过 explain 的重要性,但有时候肉眼看不出 explain 结果如何指导优化,这时候还需要有一些其他基础知识的佐助, ...

  2. Mysql子查询、关联查询

    mysql中update.delete.install尽量不要使用子查询 一.mysql查询的五种子句         where(条件查询).having(筛选).group by(分组).orde ...

  3. Mysql子查询IN中使用LIMIT

    学习下Mysql子查询IN中使用LIMIT的方法. 这两天项目里出了一个问题,mysql LIMIT使用后报错. 需求是这样的,我有3张表,infor信息表,mconfig物料配置表,maaply物料 ...

  4. MySQL 子查询 EXISTS 和 NOT EXISTS(转)

    MySQL EXISTS 和 NOT EXISTS 子查询 MySQL EXISTS 和 NOT EXISTS 子查询语法如下: SELECT ... FROM table WHERE EXISTS ...

  5. mysql子查询慢的问题

      当你在用explain工具查看sql语句的运行计划时.若select_type 字段中出现"DEPENDENT SUBQUERY"时,你要注意了.你已经掉入了mysql子查询慢 ...

  6. MySQL子查询,派生表和通用表达式

    一:子查询 1.介绍 在另一个查询(外部查询)中嵌套另一个查询语句(内部查询),并使用内部查询的结果值作为外部查询条件. 2.子查询在where中 SELECT customerNumber, che ...

  7. MySQL子查询慢现象的解决

    当你在用explain工具查看sql语句的执行计划时,若select_type 字段中出现“DEPENDENT SUBQUERY”时,你要注意了,你已经掉入了mysql子查询慢的“坑". 相 ...

  8. MySQL子查询有哪五种形式?

    MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品.MySQL是最流行的关系型数据库管理系统之一,在web应用方面,MySQL是最好的RDBMS(Rela ...

  9. mysql子查询用法

    mysql子查询用法 1 可以当值来用<pre>select id from hcyuyin_share where id=(select id from hcyuyin_share li ...

  10. MySQL 子查询(一)

    源自MySQL 5.7 官方手册 13.2.10 Subquery Syntax 〇.MySQL子查询介绍 子查询指的是嵌套在某个语句中的SELECT语句. MySQL支持标准SQL所要求的所有子查询 ...

随机推荐

  1. Java小程序--抓取emai

    一.实现思路 1.使用Java.net.URL对象,绑定网络上某一个网页的地址 2.通过java.net.URL对象的openConnection()方法获得一个HttpConnection对象 3. ...

  2. MySQL的InnoDB索引原理详解 (转)

    摘要: 本篇介绍下Mysql的InnoDB索引相关知识,从各种树到索引原理到存储的细节. InnoDB是Mysql的默认存储引擎(Mysql5.5.5之前是MyISAM,文档).本着高效学习的目的,本 ...

  3. python 列表推导式

    squares = [x**2 for x in range(10)] 相当于squares = map(lambda x: x**2, range(10)),但是更简洁和易读.傻逼才会用最古老的fo ...

  4. Caffe学习系列(11):数据可视化环境(python接口)配置

    参考:http://www.cnblogs.com/denny402/p/5088399.html 这节配置python接口遇到了不少坑. 1.我是利用anaconda来配置python环境,在将ca ...

  5. String封装——读时共享,写时复制

    碰到过一位一直怀疑C++标准库(STL)效率的人,他说STL效率太低,企业开发根本不会用.我是持反对意见的. 说这话的人,肯定没有做过大量的调查.没有调查就没有发言权. STL的效率是不低的,足够满足 ...

  6. jQuery工作原理

    jQuery的开篇声明里有一段非常重要的话:jQuery是为了改变javascript的编码方式而设计的.从这段话可以看出jQuery本身并不是UI组件库或其他的一般AJAX类库.jQuery改变ja ...

  7. 转帖:如何建立与使用 Window setup project

    原文地址: http://www.codeproject.com/Articles/12548/Visual-Studio-Windows-Application-Setup-Project

  8. oracle/node-oracledb 数据库驱动 与 Meteor 驱动包!

    oracle/node-oracledb: https://github.com/oracle/node-oracledb   Oracle 官方维护. metstrike/meteor-oracle ...

  9. hdu 5442 (ACM-ICPC2015长春网络赛F题)

    题意:给出一个字符串,长度是2*10^4.将它首尾相接形成环,并在环上找一个起始点顺时针或逆时针走一圈,求字典序最大的走法,如果有多个答案则找起始点最小的,若起始点也相同则选择顺时针. 分析:后缀数组 ...

  10. Qt 使用sqlserver

    1. pro 添加 QT       +=sql 2. void MainWindow::connectSqlServer() { QSettings *setIni = new QSettings( ...