MYSQL子查询以及合并查询的用法


只有子查询返回的结果列包含一个值时,比较运算符才适用。假如一个子查询返回的结果集是值的列表,这时比较运算符就必须用IN运算符代替。
IN运算符可以检测结果集中是否存在某个特定的值,如果检测成功就执行外部的查询。查看在infos表中score字段内容符合条件对应的info表信息
SELECT * from info where score in (SELECT score FROM infos );
查询结果:
查看在infos表和info表同名人信息
SELECT * from info where name in (SELECT name FROM infos );查询结果:
子查询可以使用比较运算符。这些比较运算符包括=、!=、>、>=、SELECT * from info where age >= (SELECT age FROM infos where id =4);查询结果:
使用EXISTS关键字时,内层查询语句不返回查询的记录。而是返回一个真假值。如果内层查询语句查询到满足条件的记录,就返回一个真值(true),否则,将返回一个假值(false)。当返回的值为true时,外层查询语句将进行查询;当返回的为false时,外层查询语句不进行查询或者查询不出任何记录。SELECT * from info where exists (SELECT * from infos where id =2);查询结果:SELECT * from info where exists (SELECT * from infos where id =27);查询结果:
ANY关键字表示满足其中任意一个条件。使用ANY关键字时,只要满足内层查询语句返回的结果中的任意一个,就可以通过该条件来执行外层查询语句。SELECT * from info where age > ANY(SELECT age from infos);查询结果:ALL关键字表示满足所有条件。使用ALL关键字时,只有满足内层查询语句返开发云主机域名回的所有结果,才可以执行外层查询语句。SELECT * from info where age 查询结果:
合并查询结果是将多个SELECT语句的查询结果合并到一起。合并查询结果使用UNION和UNION ALL关键字。SELECT score from info UNION SELECT score from infos;查询结果:SELECT score from info UNION SELECT name from infos;查询结果:

相关推荐: orzdba监控工具【增加远程监控】

orzdba工具默认必须在本地使用,这不是很方便,现增加了远程调用。使用方法:./orzdba_remote –host=192.168.148.1 –user=admin –password=123456 –port=3308开发云主机域名 -mys…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 06/08 15:47
下一篇 06/08 15:47

相关推荐