




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、SQL数据查询和更新数据查询和更新倪自晓 SQL语句最主要的功能是查询,即把数据表中的数据查找出来,以便浏览和使用。SQL语句中查询表数据使用的是 SELECT语句。1 SELECT基本形式基本形式 1)基本的SELECT语句格式: SELECT , FROM 数据库名称! 功能: 从指定表或视图中查询全部记录的指定字段值。Select:查什么数据From:由哪儿查数据Where:查的条件是什么【例1.1】查询dab中所有学生。 SELECT * FROM dab 结果如下图所示。其中“*”是通配符,表示所有字段,该命令等价于:SELECT 学号,姓名,性别,出生日期,专业班级 FROM da
2、b【例1.2】 查询dab中“姓名”、性别”字段。SELECT 姓名,性别 FROM dab结果将仅显示如图中的第2列、第3 列数据。例子1 SELECT基本形式基本形式 唯一性查询指对于要显示的结果,若有重复出现时,则只显示重复行中的一行。这可通过在基本SELECT语句中加入DISTINCT关键字的方法实现。若不加此关键字,则显示全部行。【例2.1】查询dab中“专业班级”字段,要求数据重复时,仅显示相重复的一条记录。SELECT 专业班级 FROM dab DISTINCT结果右图所示。2 唯一性唯一性查询查询3 带带条件的条件的查询查询 在SELECT语句中,可以通过WHERE子句为查询
3、规定条件WHERE子句的格式:WHERE AND 功能: 查询指定表或视图中满足查询条件的记录。其中可以是关系表达式,也可以是逻辑表达式,下表列出了组成常用的运算符。3 带带条件的条件的查询查询-运算符运算符类别运算符实例关系运算符=、=、=、成绩=60逻辑运算符NOT、 AND、 OR成绩=60 AND成绩=70 AND 成绩=903 带带条件的条件的查询查询例子【例3.4】查询dab中所有姓“张”的学生。SELECT * FROM dab WHERE 姓名 LIKE 张%结果如下图所示。 注: LIKE子句中可以用通配符:下划线“_”,表示任何一个字符;百分号符“%”,表示一串字符。3 带
4、带条件的条件的查询查询例子【例4.1】 按课程的学分升序查询出全部课程信息。SELECT * FROM kcb ORDER BY 学分 4 排序排序查询查询 通过ORDER BY子句可以实现查询结果的排序输出,允许按一列或多列排序。其中:ASC表示升序排序(缺省方式),DESC表示降序排序。格式:ORDER BY ASC|DESC, ASC|DESC【例4.2】 按学号升序,相同学号再按成绩降序查询出全部学生成绩情况。SELECT * FROM xkcjb ORDER BY 学号,成绩 DESC结果如下图所示。 4 排序查询排序查询例子函数的格式函数的格式函数功能函数功能COUNT(COUNT
5、(* *) )计算记录条数计算记录条数SUM(SUM(字段名字段名) )求字段名所指定字段值的总和求字段名所指定字段值的总和AVG(AVG(字段名字段名) )求字段名所指定字段的平均值求字段名所指定字段的平均值MAX(MAX(字段名字段名) )求字段名所指定字段的最大值求字段名所指定字段的最大值MIN(MIN(字段名字段名) )求字段名所指定字段的最小值求字段名所指定字段的最小值 5 带带计算函数的查询计算函数的查询 在SELECT语句中,使用SQL语言提供的一些查询计算函数,可以增强查询功能。基本的查询计算函数的格式及功能如下表所示。【例5.1】 求所有课程的总学分。SELECT SUM(学
6、分) FROM kcb 结果是:Sum_学分31【例5.2】 求学生总人数。SELECT COUNT(*) FROM dab 结果是:Cnt12【例5.3】 求学生平均年龄。SELECT AVG(YEAR(DATE()-YEAR(出生日期) FROM dab结果是:Avg_exp_119.33【例5.4】 求选修课程的最高成绩和最低成绩。SELECT MAX(成绩) ,MIN(成绩) FROM xkcjb 结果是:Max_成绩 Min_成绩100.0 38.0 5 带带计算函数的查询计算函数的查询【例6.1】求选修课程的最高成绩和最低成绩。SELECT MAX (成绩) AS 最高成绩,MIN
7、(成绩) AS 最低成绩 FROM xkcjb 结果是:最高成绩 最低成绩100.0 38.06 用用别名输出列标题(字段名别名输出列标题(字段名) 将列名用含义更明确的别名输出,便于理解,可以通过AS关键字实现。 格式: AS 功能: 将查询输出的列名以列别名输出。其中,列别名若为常字串,则无须加定界符。7 分组分组查询查询通过GROUP BY子句可以实现分组查询。格式: GROUP BY , HAVING 其中, 可以是表的字段名、字段函数名或标识列的数值型表达式;HAVING 子句进一步限定分组的条件。注意: 若只有HAVING子句而无GROUP BY子句,则HAVING子句相当于WHE
8、RE子句。【例7.1】求各门课程的平均成绩。SELECT 课程号,AVG(成绩)FROM xkcjb GROUP BY 课程号结果右图所示。【例7.2】求至少选修了2门课程的学生的信息。 SELECT dab.学号,姓名,课程号 FROM dab,xkcjb WHERE dab.学号=xkcjb.学号GROUP BY dab.学号 HAVING COUNT(*)=2结果左图所示。7 分组查询分组查询例子(1)使用TOP PERCENT短语显示部分结果【例8.1】显示学分较高的2门课程的信息。SELECT * TOP 2 FROM KCB ORDER BY 学分 DESC【例8.2】显示学分最低
9、的20%课程的信息。SELECT * TOP 20 PERCENT FROM KCB ORDER BY 学分注意: TOP短语要与ORDER BY短语同时使用才有效。8 TOP 使用SQL语句对表中记录进行操作,无须用USE命令打开表,便可完成有关记录的插入、更新、删除等相关操作。SQL语句与前面介绍的添加记录、修改记录及删除记录命令相比较,在操作方式和方法上有很大的不同。SQL语句在只对一条记录的操作时要简捷得多,但对多条记录操作并不方便。更新更新表表9 插入插入记录记录格式:INSERT INTO(,) VALUES(,) 功能:在指定表末尾添加一条新记录。【例9.1】向表dab添加一条记录。INSERT INTO dab (学号,姓名,性别,出生日期,专业班级) VALUES(20060002,张三,男,1987-10-10,计算机1班) 结果如图所示10 更新记录更新记录 格式: UPDATE SET = ,= WHERE 功能:更新表中满足条件记录的字段值,即用的值替换对应的的值。【例10.1】将dab表中的姓名“张三”改为“李四”。UPDATE dab SET 姓名=李四 WHERE 姓名=张三格式:DELETE FROM WHERE 功能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030电视剧产业市场深度调研及发展趋势与投资战略研究报告
- 2025-2030电影镜头行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030玉器行业市场深度调研及前景趋势与投资研究报告
- 高层建筑水电施工合同范本
- 2025-2030无叶风扇产业发展分析及发展趋势与投资前景预测报告
- 2025-2030感冒药行业市场深度调研及前景趋势与投资研究报告
- 2025-2030年鸡养殖行业市场现状供需分析及投资评估规划分析研究报告
- 2025年水帘式喷台项目可行性研究报告
- 虚拟货币交易服务合同
- 2025-2030年全球越野车轮胎行业市场调查及投资可行性分析报告
- 档案安全知识培训
- 建筑公司礼仪培训
- 美国跨境电商市场情况
- 2025年江苏无锡宜兴市国有资本投资控股集团有限公司招聘笔试参考题库附带答案详解
- 江苏省苏州市吴中、吴江、相城、高新区2024-2025学年七年级上学期期末阳光调研道法试卷(含答案)
- 2024-2030年中国检验检测行业发展潜力预测及投资战略研究报告
- 融资融券与投资者行为
- 装配式建筑深化设计-1.2.3 装配式建筑深化设计拆分原47课件讲解
- 2025年中考数学二轮专题复习 题型五-几何探究题
- 【MOOC】园林植物应用设计-北京林业大学 中国大学慕课MOOC答案
- R1快开门式压力容器操作考试题及答案
评论
0/150
提交评论