首页 >php教程 >php手册 >今天有事-MySQL,有事-MySQL

今天有事-MySQL,有事-MySQL

WBOY
WBOY原创
2016-06-13 08:51:351206浏览

今天有事-MySQL,有事-MySQL

  hi

今天有事,一会儿要去耍,能学多少是多少吧

1、MySQL

-----子查询与连接(二)-----

----子查询

子查询,是指出现在其他SQL语句内的SELECT子句

注意:子查询指嵌套在查询内部,且必须始终出现在圆括号内;可以包含多个关键字或条件;外层查询可以是SELECT,INSERT,UPDATE,SET或DO

子查询的返回,可以是标量、一行、一列或者是一个子查询

可以分为三类:使用比较运算符的=,>=等;NOT IN ;EXIST

----使用比较运算符实现子查询

--

mysql> SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=5391.30;

这里的数字可以不用管,就是之前获取的一个平均值。

所以要是想直接得到这个平均值参与的结果,用子查询这样写

mysql> SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=(SELECT ROUND(AVG(goods_price),2) FROM tdb_goods);

这里可以看到,子查询在小括号中,用到了>=

--

当子查询返回多个结果,而主查询用不到这么多时,可以用ANY SOME ALL关键字

其中ANY和SOME一样,满足其中一个就好,具体是哪个 要看运算符是什么(比如>就大于最小值就行)

ALL要求满足所有返回的要求

用法是写在子查询小括号的前面

----由IN或NOT IN引发的子查询

其实IN 与=ALL运算符等价,NOT IN与=!ALL等价

用法也类似

----EXIST

返回布尔值,用的很少

 

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn