MySQL查询的几种常见形式
复制代码代码如下所示:
SELECT * FROM XXX在哪里col = {任何|所有}(SELECT * FROM XXXX);
语法可以分为添加关键词和关键词的方法,没有关键词时,子查询返回一个离散值(注一),查询将子查询的结果作为WHERE子句的查询,查询语法可以在前面加入任何、所有,有些和其他键,返回子查询是值的一组离散的。任何意味着查询的返回值的子查询作为一个范围,这是查询的值的范围内,这是类似于在关键字。所有的关键都不是很清楚,说明什么匹配。
复制代码代码如下所示:
从xxx中选择*(从XXXX中选择*);
语法很清晰:一个查询语句的WHERE子句中的子查询语句的结果是,类似于以前的任何语法。
复制代码代码如下所示:
选择行(value1,value2…)= {有}(selectcol1,COL2 ..);
该语句的执行实质上是从子查询语句的执行中得到的结果与查询的结果集相匹配。如果找到匹配返回的真值,将返回false返回,并且两边的结果集是一组离散值。
复制代码代码如下所示:
选择…在哪里存在{ }不存在(选择…);
这个语句相对来说比较差,它的执行是这样的:当查询操作时,返回结果时,语句被执行,并且语句的次数被执行好几次;
复制代码代码如下所示:
选择…从(选择)…
语法在平时使用较少,而且还没有很好的理解,就是这样,子构造一个新的查询执行结果(这个语句是派生数据表是一个虚拟表),它被用作主要查询对象,语法非常强大,经常用于一些复杂查询中。
子查询是很方便,但是它有很多缺点。它不支持限制。实验证明,该算法的执行效率很不令人满意。总的来说,它仍然是不推荐使用子查询。