版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MYSQL单表查询讲课人:李立目录查询基础01查询条件03分组与筛选05基本查询语句02特定数据的查询04高级查询技巧06查询基础01MYSQL语言概述MYSQL是用于管理关系数据库的标准编程语言,它包括数据查询、更新、插入和删除等操作。单表查询概念单表查询是按照一定的条件在单个数据表上进行的数据查询。使用MYSQL语言中的SELECT语句来实现对数据的查询。单表查询指的是从一个数据库表中检索数据的过程,不涉及多个表的联合查询。基本查询语句02SELECT语句基础SELECT语句用于从数据库表中选择数据,基本格式为`SELECT列名称FROM表名称`。【例7-1】查询student表中学生的全部信息。SELECT*FROMstudent;说明:SELECT子句后面可以用星号(*)返回数据表中的所有列。FROM子句列出要查询的表名,本任务中是student表。执行结果如图所示。在实际应用中,应用程序只需获取满足用户需求的数据,因而在查询数据时通常会指定查询条件,以筛选出用户所需的数据。使用SELECT语句进行查询时,如果用户希望设置查询条件来限制返回的数据,可以在SELECT语句后面使用WHERE子句来实现。使用WHERE子句可以给出查询的条件,提高查询的效率。WHERE子句必须紧跟在FROM子句后面。WHERE子句中的表达式可以是比较运算符、字符匹配运算符、区间运算符、是否为空值、逻辑运算符等谓词构成的式子。系统根据真假来决定数据是否满足该查询条件,只有满足查询条件的数据才会出现在结果集中。在SQL中,返回逻辑值的运算符或关键字都可称为谓词。WHERE子句使用WHERE子句用于过滤记录,只返回满足指定条件的数据行,基本格式为`SELECT列名称FROM表名称WHERE条件`。【例7-2】查询teacher表中年龄在40岁以下的全部信息。SELECT*FROMteacherWHEREAge<=40;说明:本任务要查找年龄在40岁以下的教师信息,因此在WHERE子句中给出比较表达式Age<=40来限定条件。当teacher表中有Age的值小于等于40时,则比较表达式值为TRUE,执行结果如图所示。查询条件中的谓语03逻辑运算符查询条件谓词逻辑运算符NOT非AND与OR或XOR异或字符匹配LIKE区间BETWEEN…AND…包含IN()在列表中NOTIN()不在列表中空值ISNULL空值ISNOTNULL不为空常用比较运算符查询条件谓词含义比较运算符>大于用于比较两个表达式的值,当两个表达式的值均不为空值(NULL)时,比较运算返回逻辑值TRUE(真)或FALSE(假)>=大于等于<小于<=小于等于<>或!=不等于=相等<=>相等或都等于空【例7-3】查询teacher表中刘姓老师的信息。SELECT*FROMteacherWHERETeanameLIKE"刘%";或SELECT*FROMteacherWHERELEFT(Teaname,1)="刘";【例7-4】查询score表中,成绩在60~80分之间的学号和成绩信息。SELECT*FROMscoreWHEREGradeBETWEEN60AND80;说明:当score表中有成绩在60分以上,80分以下的学生信息时,则表达式值为TRUE,执行结果如图所示。特定数据的查询04排序查询结果ORDERBY子句用于对结果集进行排序,基本格式为`SELECT列名称FROM表名称ORDERBY列名称ASC|DESC`。说明:(1)该子句可以根据一个或多个列进行排序,也可以根据表达式进行排序。(2)可以在列的后面指定ASC(升序)或DESC(降序)。如果没有指定顺序,系统默认使用升序。(3)如果选择“顺序号”,则排序的列是SELECT顺序号对应输出的相同列。【例7-5】查询teacher表中教师姓名和年龄,结果按年龄升序排列。SELECTTeanameAS姓名,AgeAS年龄FROMteacherORDERBYAgeASC;说明:SELECT子句后面列出的是需要查询的列名列表。FROM列出要查询的表名。本任务要求按年龄升序排序,因此给出排序条件ORDERBYAgeASC,也可以写成ORDERBY年龄ASC或ORDERBY2ASC,执行结果如图所示。【例7-6】查询teacher表内容,先按教学部升序,再按年龄降序排列。SELECT*FROMteacherORDERBYDepartment,AgeDESC;说明:本任务有两个排序项,先按教学部升序排列,当系部相同时,则按年龄降序排列,执行结果如下:分组与筛选05GROUPBY子句语法格式如下:GROUPBY<列名|表达式|顺序号>,…[HAVING<表达式>];说明:(1)该子句可以根据一个列或多个列进行分组,并使用聚合函数为查询结果集中的每个分组产生一个汇总值。(2)在分组结果中应用HAVING<条件>,可以去掉不满足条件的记录。并且HAVING必须跟在GROUPBY之后,不能单独使用。(3)HAVING条件与WHERE条件不同,WHERE子句作用于数据表或视图,从中选择满足条件的记录;HAVING子句作用于组,选择满足条件的组,子句中可以包含聚合函数。HAVING子句HAVING子句用于设定条件过滤分组后的结果集,类似于WHERE子句,但用于分组。聚合函数使用聚合函数如COUNT(),SUM(),AVG(),MAX(),MIN()等用于对一组值执行计算并返回单个值。【例7-7】查询student表中学生的总人数。SELECTCOUNT(*)FROMstudent;说明:本任务需要查询学生总人数,即student表中的总行数,因此给出表达式COUNT(*),可以用student表中的任意列作为函数的参数,也可以直接用星号(*)表示。执行结果如图所示。【例7-8】查询student表中各专业学生人数。SELECTCOUNT(*)AS学生人数,SpecialityFROMstudentGROUPBYSpeciality;说明:本任务需要统计每个专业的学生人数,即根据专业来进行分组统计人数,因此给出GROUPBYSpeciality,执行结果如图所示。【例7-9】查询score表中平均成绩在80分以上的学生的学号和平均成绩。SELECTStuidAS学号,AVG(Grade)AS平均成绩FROMscoreGROUPBYStuidHAVINGAVG(Grade)>=80;说明:本任务需要统计每个学生的平均成绩,即根据学号来进行分组,因此给出GROUPBYStuid。另外要求平均成绩在80分以上,即在按学号分组后再进行筛选,因此给出HAVINGAVG(Grade)>=80。执行结果如图所示。高级查询技巧06使用LIKE进行模糊匹配LIKE运算符用于在WHERE子句中搜索列中的指定模式,配合通配符使用。通配符例子`%`代表任意数量的字符,例如`SEL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年湖北神农架执业药师考试(中药学专业知识)复习题及答案
- 2026年安徽芜湖执业药师考试(中药学专业知识)复习题及答案
- 2026年禁毒自查报告(3篇)
- 2026云南国土学院后勤服务有限责任公司招聘7人笔试题库(培优A卷)附答案详解
- 2026自然资源部国土整治中心(自然资源部土地科技创新中心)招收博士后人员2人参考题库及参考答案详解【夺分金卷】
- 淄博市2026年省属公费师范毕业生竞岗选聘备考题库及完整答案详解(典优)
- 2026青海省高校毕业生三支一扶计划招募2000人模拟试卷A4版附答案详解
- 武夷山职业学院《智能医学概率基础》2026-2027学年第一学期期末试卷含解析
- 浙江理工大学《手绘效果图表现》2026-2027学年第一学期期末试卷含解析
- 广东省揭阳市名校2026年八年级物理第一学期期末考试模拟试题含解析
- 贝壳租房合同协议书
- 英语教师教学工作总结范文
- 华南师范大学《计算机程序设计(python)》2023-2024学年第一学期期末试卷
- 膝痹病的护理
- 2022年大学生财经素养大赛参考题库(含答案)
- 《自然语言处理》期末考试试卷附答案
- 《新媒体营销》课件
- DB11 637-2015 房屋结构综合安全性鉴定标准
- T-CRHA 046-2024 标准手术体位安置技术规范
- (高清版)TDT 1037-2013 土地整治重大项目可行性研究报告编制规程
- 堤防波浪壅高、爬高计算表格
评论
0/150
提交评论