MySQL 6.子查询
2015-11-07 16:48
429 查看
子查询:
子查询指嵌套在查询内部,且必须始终出现在圆括号内
子查询可以包含多个关键字或条件,如DISTINCT、GROUP BY 、ORDER BY、LIMIT、函数等
子查询的外层查询可以是我们所知道的所有的SQL命令的统称。
一下Demo基于此表结构,具体信息就不做展示:
子查询Demo
ANY、SOME、ALL:ANY和SOME等价相当于任何一个即可,ALL则是所有的
Demo:查找出价格大于所有超级本的商品
2.使用NOT IN 与 IN 的子查询
=ANY运算符与IN等效
!=ALL与NOT IN 等效
3.使用EXISTS产生的子查询(如果子查询返回任何行,EXISTS将返回TRUE,否则返回FALSE)此种方法不常用
子查询指嵌套在查询内部,且必须始终出现在圆括号内
子查询可以包含多个关键字或条件,如DISTINCT、GROUP BY 、ORDER BY、LIMIT、函数等
子查询的外层查询可以是我们所知道的所有的SQL命令的统称。
一下Demo基于此表结构,具体信息就不做展示:
SELECT goods_id, goods_name, goods_price FROM tdb_goods WHERE goods_price >= (SELECT ROUND(AVG(goods_price),2) FROM tdb_goods);
子查询Demo
ANY、SOME、ALL:ANY和SOME等价相当于任何一个即可,ALL则是所有的
Demo:查找出价格大于所有超级本的商品
SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price > ALL (SELECT goods_price FROM tdb_goods WHERE goods_cate='超级本');
2.使用NOT IN 与 IN 的子查询
=ANY运算符与IN等效
!=ALL与NOT IN 等效
3.使用EXISTS产生的子查询(如果子查询返回任何行,EXISTS将返回TRUE,否则返回FALSE)此种方法不常用
相关文章推荐
- Mysql函数:Last_insert_id()语法讲解
- 54. mysqli 扩展库
- mysql支持emoji解决办法
- Mac下安装新版MySQL5.7
- mysql使用过程中碰到的问题
- MySQL忘记密码怎么办
- 修改mysql DataDir方式
- 基于MySQL5.7MHA的配置
- Windows下Mysql解压缩版配置安装与卸载
- jsp程序向调用mysql语句操作数据库传中文出现乱码
- mysql中的关键字
- 通过innobackupex实现对MySQL的完整热备份
- mysql处理中文乱码的问题
- mysql学习笔记(1)
- MYSQL源码 姜承尧---网易
- 何登成 MYSQL 博客
- MYSQL 源码- 淘宝数据库研发组
- MySQL索引
- mysql_1
- MySQL7:性能优化