




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Mysql查询数据单表查询6使用集合函数查询10连接查询11子查询12合并查询结果13为表和字段取别名14本章所用到的数据表/*顾客表*/CREATE TABLE customers( c_id int NOT NULL AUTO_INCREMENT, c_name char(50) NOT NULL, c_address char(50) NULL, c_city char(50) NULL, c_zip char(10) NULL, c_contact char(50) NULL, c_email char(255) NULL, PRIMARY KEY (c_id);/*水果表*/CREA
2、TE TABLE fruits( f_id char(10) NOT NULL, s_id INTNOT NULL, f_name char(255) NOT NULL, f_price decimal(8,2) NOT NULL, PRIMARY KEY(f_id) ;/*供货方表*/CREATE TABLE suppliers( s_id int NOT NULL AUTO_INCREMENT, s_name char(50) NOT NULL, s_city char(50) NULL, s_zip char(10) NULL, s_call CHAR(50) NOT NULL, PRI
3、MARY KEY (s_id) ;/*订单明细表*/CREATE TABLE orderitems( o_num int NOT NULL, o_item int NOT NULL, f_id char(10) NOT NULL, quantity int NOT NULL, item_price decimal(8,2) NOT NULL, PRIMARY KEY (o_num,o_item) ;/*订单表*/CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date datetime NOT NULL, c_id int N
4、OT NULL, PRIMARY KEY (o_num) ;/*-插入数据-*/INSERT INTO customers(c_id, c_name, c_address, c_city, c_zip, c_contact, c_email) VALUES(10001, RedHook, 200 Street , Tianjin, 300000, LiMing, LMing),(10002, Stars, 333 Fromage Lane, Dalian, 116000, Zhangbo,Jerry),(10003, Netbhood, 1 Sunny Place, Qingdao, 2660
5、00, LuoCong, NULL),(10004, JOTO, 829 Riverside Drive, Haikou, 570000, YangShan, sam);INSERT INTO fruits (f_id, s_id, f_name, f_price)VALUES(a1, 101,apple,5.2),(b1,101,blackberry, 10.2),(bs1,102,orange, 11.2),(bs2,105,melon,8.2),(t1,102,banana, 10.3),(t2,102,grape, 5.3), (o2,103,coconut, 9.2),(c0,101
6、,cherry, 3.2),(a2,103, apricot,2.2),(l2,104,lemon, 6.4),(b2,104,berry, 7.6),(m1,106,mango, 15.6),(m2,105,xbabay, 2.6),(t4,107,xbababa, 3.6),(m3,105,xxtt, 11.6),(b5,107,xxxx, 3.6);INSERT INTO suppliers(s_id, s_name,s_city, s_zip, s_call)VALUES(101,FastFruit Inc.,Tianjin,300000,48075),(102,LT Supplies
7、,Chongqing,400000,44333),(103,ACME,Shanghai,200000,90046),(104,FNK Inc.,Zhongshan,528437,11111),(105,Good Set,Taiyuang,030000, 22222),(106,Just Eat Ours,Beijing,010, 45678),(107,DK Inc.,Zhengzhou,450000, 33332);INSERT INTO orderitems(o_num, o_item, f_id, quantity, item_price)VALUES(30001, 1, a1, 10,
8、 5.2),(30001, 2, b2, 3, 7.6),(30001, 3, bs1, 5, 11.2),(30001, 4, bs2, 15, 9.2),(30002, 1, b3, 2, 20.0),(30003, 1, c0, 100, 10),(30004, 1, o2, 50, 2.50),(30005, 1, c0, 5, 10),(30005, 2, b1, 10, 8.99),(30005, 3, a2, 10, 2.2),(30005, 4, m1, 5, 14.99);INSERT INTO orders(o_num, o_date, c_id)VALUES(30001,
9、 2008-09-01, 10001),(30002, 2008-09-12, 10003),(30003, 2008-09-30, 10004),(30004, 2008-10-03, 10005),(30005, 2008-10-08, 10001);单表查询查询所有字段 查询指定字段【例7.1】从fruits表中检索所有字段的数据查询单个字段【例7.2】查询当前表中f_name列所有水果名称,输入如下语句:查询多个字段【例7.3】例如,从fruits表中获取f_name和f_price两列,输入如下语句:查询指定记录【例7.4】查询价格为10.2元的水果的名称,输入如下语句:【例7.5】
10、查找名称为“apple”的水果的价格,输入如下语句:【例7.6】查询价格小于10的水果的名称,输入如下语句:带in关键字的查询【例7.7】s_id为101和102的记录,输入如下语句:【例7.8】查询所有s_id不等于101也不等于102的记录,输入如下语句:带between and 的范围查询【例7.9】查询价格在2.00元到10.5元之间水果名称和价格【例7.10】查询价格在2.00元到10.5元之外的水果名称和价格带like的字符匹配查询,百分号通配符% ,匹配任意长度的字符【例7.11】查找所有以b字母开头的水果,输入如下语句:【例7.12】在fruits表中,查询f_name中包含字
11、母g的记录【例7.13】查询以b开头,并以y结尾的水果的名称下划线通配符_一次只能匹配任意一个字符【例7.14】在fruits表中,查询以字母y结尾,且y前面只有4个字母的记录查询空值在子句中 不能使用= 使用 is null 表示空值【例7.15】查询customers表中c_email为空的记录的c_id、c_name和c_email字段值:【例7.16】查询customers表中c_email不为空的记录的c_id、c_name和c_email字段值带and 的多条件查询【例7.17】在fruits表中查询s_id = 101,并且f_price大于5价格和名称的记录【例7.18】在fr
12、uits表中查询s_id = 101或者102,并且f_price大于5,并且f_name=apple的记录价格和名称带OR的多条件查询【例7.19】查询s_id=101或者s_id=102的水果供应商的f_price和f_name,SQL语句如下:【例7.20】查询s_id=101或者s_id=102的水果供应商的f_price和f_name查询结果不重复 使用distinct 语法:select distinct 字段名 from 表名【例7.21】查询fruits表中s_id字段的值,并返回s_id字段值不得重复对差询结果进行排序 order by 默认按升序来排序 即ASC单列排序【例
13、7.22】查询fruits表的f_name字段值,并对其进行排序多列排序【例7.23】查询fruits表中的f_name和f_price字段,先按f_name排序,再按f_price排序备注:对多列排序的时候,首先排序的第一列必须是相同的值,才会对第二列进行排序, 如果第一列数据中所有的值都是唯一的,将不再对第二列进行排序【例7.24】查询fruits表中的f_name和f_price字段,对结果按f_price降序方式排序指定排序的方向 ASC 升序, DESC 降序【例7.25】查询fruits表,先按f_price降序排序,再按f_name字段升序排序,SQL语句如下:分组查询:grou
14、p by关键字通常和集合函数一起使用例如:max(),min(),count(),sun() ,avg()每一个水果供应商提供多种水果,根据水果供应商分组使用count可以查看水果供应商供应的水果种类数【例7.26】根据s_id对fruits表中的数据进行分组group_concat()可以将分组的子元素查看出来【例7.27】根据s_id对fruits表中的数据进行分组,将每个供应商的水果名称显示出来having条件过滤【例7.28】根据s_id对fruits表中的数据进行分组,并显示水果种类大于1的分组信息使用with rollup:记录计算查询出的所有记录的总和,即统计记录数量【例7.29
15、】根据s_id对fruits表中的数据进行分组,并显示记录数量多字段分组【例7.30】根据s_id和f_name字段对fruits表中的数据进行分组, SQL语句如下,group by 和order by 一起使用o_num订单号,订单价格【例7.31】查询总订单价格大于100的订单号和总订单价格使用limit限制查询结果的数量limit 位置偏移量,行数【例7.32】显示fruits表查询结果的前4行,输入如下语句:记录从0开始【例7.33】在fruits 表中,使用LIMIT子句,返回从第5个记录开始的,行数长度为3的记录使用集合函数查询count()函数 返回某一列行的总数【例7.34】
16、查询customers表中总的行数【例7.35】查询customers表中有电子邮箱的顾客的总数,输入如下语句:【例7.36】在orderitems表中,使用COUNT()函数统计不同订单号中订购的水果种类sum()求和函数【例7.37】在orderitems表中查询30005号订单一共购买的水果总量,输入如下语句:【例7.38】在orderitems表中,使用SUM()函数统计不同订单号中订购的水果总量avg()平均值函数【例7.39】在fruits表中,查询s_id=103的供应商的水果价格的平均值,SQL语句如下:【例7.40】在fruits表中,查询每一个供应商的水果价格的平均值,SQ
17、L语句如下:max()最大值【例7.41】在fruits表中查找市场上价格最高的水果,SQL语句如下:【例7.42】在fruits表中查找不同供应商提供的价格最高的水果【例7.43】在fruits表中查找f_name的最大值,SQL语句如下min()最小值【例7.44】在fruits表中查找市场上价格最低的水果,SQL语句如下:【例7.45】在fruits表中查找不同供应商提供的价格最低的水果连接查询内连接查询:【例7.46】在fruits表和suppliers表之间使用内连接查询,查询之前,查看两个表的结构,使用Inner join 语法进行内连接查询 语法 select 列名 from 表
18、名 inner join 表名 on 条件【例7.47】在fruits表和suppliers表之间使用INNER JOIN语法进行内连接查询自连接查询:在一个查询中涉及到的两张表都是同一张表【例7.48】查询供应f_id=a1的水果供应商提供的其他水果种类备注:为防止二义性对表使用别名自连接,可以将一张表看成两张完全相同的数据表,相当于数据表的复制表外连接查询:包括左连接,右连接 返回主表中的所有记录和附表中连接字段相等的记录【例7.49】在customers表和orders表中,查询所有客户,包括没有订单的客户,SQL语法如下,【例7.50】在customers表和orders表中,查询所有
19、订单,包括没有客户的订单复合条件联合查询【例7.51】在customers表和orders表中,使用INNER JOIN语法查询customers表中ID为10001、的客户的订单信息【例7.52】在fruits表和suppliers表之间使用INNER JOIN语法进行内连接查询,并对查询结果排序 子查询定义两个表tb11和tb12CREATE table tb11 ( num1 INT NOT NULL);CREATE table tb12 ( num2 INT NOT NULL);向两个表中插入数据,INSERT INTO tb11 values(1), (5), (13), (27);INSERT INTO tb12 values(6), (14), (11), (20);带in关键字的子查询【例7.58】在orderitems表中查询订购f_id为c0的订单号,并根据订单号查询具有订单号的客户c_id【例7.59】与前一个例子语句类似,但是在SELECT语句中使用NOT IN操作符带比较运算符的子查询【例7.60】
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版高中化学选择性必修1第四章化学反应与电能金属的腐蚀与防护课件
- 良性位置性眩晕(耳石症)护理
- 激光外科护理操作流程
- 彩色卡通手绘如果地球被我们吃掉了儿童绘本
- 小学生德育教育
- 造纸行业工艺流程
- 酒店员工工伤处理流程
- 2025届山东省威海市重点中学高三第四次质量检测试题物理试题含解析
- 沈阳师范大学《医学超声诊断学》2023-2024学年第二学期期末试卷
- 重庆第二师范学院《足球主项实践教学》2023-2024学年第二学期期末试卷
- DB44∕T 1049-2012 物业服务 绿化养护检查规范
- 人员下班安全检查记录表
- 腹膜透析治疗的护理-课件资料
- 国家开放大学《调剂学(本)》形考任务1-4参考答案
- 幼儿园小班绘本:《一步一步_走啊走》 PPT课件
- 曾奇峰精神分析网络课程学习笔记第1-6讲
- 《基础和声学》试习题库(6套答案)
- 马克思主义政治经济学课程讲义
- SolidWorks、CAD三维建模练习习题图
- HONEYWELLDCS操作手册
- 方正飞腾使用教程详解
评论
0/150
提交评论