MySQL(基础篇)之子查询

php中文网
发布: 2016-06-07 15:03:03
原创
1062人浏览过

一: 前言 数据仍然采用上一章采用的数据,并且在db_book2额外添加一张表 MysqlCREATE TABLE t_pricelevel( id INT PRIMARY KEY AUTO_INCREMENT, pricelevel INT, price FLOAT, description VARCHAR(50) ); MysqlINSERT INTO t_pricelevel VALUES(NULL,1,80.00



一: 前言

数据仍然采用上一章采用的数据,并且在db_book2额外添加一张表

Mysql>CREATE TABLE t_pricelevel(

id INT PRIMARY KEY AUTO_INCREMENT,

pricelevel INT,

price FLOAT,

description  VARCHAR(50)

);

 

Mysql>INSERT INTO t_pricelevel VALUES(NULL,1,80.00,'价格贵的书'),(NULL,2,60.00,'价格适中的书'),(NULL,3,40.00,'价格便宜的书');

乱码问题请参考http://blog.csdn.net/a672489861/article/details/16330821

 

二: 子查询

2.1     带In 关键字的子查询

一个查询语句的条件可能落在另一个SELECT 语句的查询结果中。

 

例: 查询t_book表中booktypeid在t_booktype表中存在的记录

Mysql>SELECT * FROM t_book WHERE booktypeid IN(

SELECT id FROM t_booktype

);

 

Mysql>SELECT * FROM t_book WHERE booktypeid NOT IN(

SELECT id FROM t_booktype

);


MySQL(基础篇)之子查询


2.2     带比较运算符的子查询

子查询可以使用比较运算符。

例: 查询t_pricelevel表中价格比平均价格高的记录

Mysql>SELECT * FROM t_pricelevel WHERE price>(

SELECT AVG(price) FROM t_pricelevel

);

MySQL(基础篇)之子查询


2.3     带Exists 关键字的子查询

蓝色大气家电商城网站源码
蓝色大气家电商城网站源码

蓝色大气家电商城网站源码,具有适合家电商城的设计风格,预装了基础模块,企业招聘模块,留言反馈模块,会员功能模块,网友点评模块,新闻文章模块,网上购物模块,积分换赠模块等功能模块。具有商品分类、品牌管理、商品管理、支付方法设置、配送方法设置、会员类型设置、会员账户管理、会员积分管理、订单管理、订单统计、销售统计、商品搜索、商品分类查询、商品品牌查询、商品订购、在线支付、商品评论等B2C电子商务功能;

蓝色大气家电商城网站源码 0
查看详情 蓝色大气家电商城网站源码

假如子查询查询到记录,则进行外层查询,否则,不执行外层查询。

Mysql>SELECT * FROM t_book WHERE EXISTS(

SELECT * FROM t_booktype

);


2.4     带Any 关键字的子查询

ANY 关键字表示满足其中任一条件。

例: 查询t_book表中价格大于t_pricelevel的任意一个的记录

Mysql>SELECT * FROM t_book WHERE price>ANY(

SELECT price FROM t_pricelevel

);


2.5     带All 关键字的子查询

ALL 关键字表示满足所有条件

例: 查询t_book表中价格大于t_pricelevel的所有价格的记录

Mysql>SELECT * FROM t_book WHERE price>ALL(

SELECT price FROM t_pricelevel

);

MySQL(基础篇)之子查询


2.6     综合练习

例: 查询t_book表中价格大于t_booktype表中最低价格的记录

Mysql>SELECT * FROM t_book WHERE price>(

SELECT MIN(price) FROM t_pricelevel

);

 

例: 查询t_book表中价格大于t_pricelevel表的平均价格的相关t_booktype的信息

Mysql>SELECT * FROM t_booktype WHERE id IN(

SELECT booktypeid FROM t_book WHERE price>(

SELECT AVG(price) FROM t_pricelevel

)

);

 

三: 总结

今天为大家带来了子查询的相关内容,大家消化一下,下节为大家带来合并记录以及别名的知识,谢谢大家!MySQL(基础篇)之子查询


相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号