欢迎来到天天文库
浏览记录
ID:37905559
大小:121.50 KB
页数:8页
时间:2019-06-02
《SQL数据查询和数据操作举例》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验2准备SQL查询(上课讲解)(教材该部分内容:P79-80,102-105)1、SQL的数据查询功能使用数据库和表的主要目的是存储数据,以便在需要时进行检索、统计或组织输出,通过T-SQL的查询可以从表或视图中迅速、方便地检索数据。SQL的SELECT语句可以实现对表的选择、投影及连接操作,其功能十分强大。2、SQL查询命令格式SQL的核心是查询,SQL的查询命令也称作SELECT命令,它的基本形式由SELECT—FROM--WHERE查询块组成,多个查询块可以嵌套执行。3.几种常用的查询方法下面以“学生管理”数据库
2、为例,对常用的查询方法进行说明。在“学生管理”数据库中有“学生”表、“课程”表、“成绩”表,如图1所示(说明:这3张表就是你上次实验课所建立的表,请附加上次实验的数据库以后,用SQL管理平台在这3张表中输入以下数据)。学生学号姓名性别出生日期院系101001张丽女1987-3-2计算机系101002王健男1987-4-10计算机系102001赵南南女1988-8-12外语系102002孙小娟女1987-11-17外语系学号课程号分数1010011801010012911010023NULL1020011961020021
3、80课程成绩课程号课程名学时学分1英语6442高等数学9653数据库原理7244管理信息系统724图1学生管理数据库中的基本表往数据库中输入数据的方法有3种:1)使用企业管理器完成数据输入:-打开数据库表。右键表名,如“学生”——打开表——返回所有行。-输入数据至学生表。-单击数据表窗口右上角的关闭按钮,关闭当前数据库表,保存数据库表。2)使用DTS导入/导出向导把EXCEL文件中的数据导入到数据库表中。右键表名——所有任务——导入数据3)用T-SQL命令完成数据输入(实验3介绍)。8各种查询:1)简单查询(1)从“成绩
4、”表中查出所有学生分数。方法一:SELECT分数FROM成绩;方法二:SELECTDISTINCT分数FROM成绩;说明:使用DISTINCT,执行结果将去掉重复的元组。(2)查询“学生”表中的所有学生信息。方法一:SELECT*FROM学生;方法二:SELECT学号,姓名,性别,出生日期,院系FROM学生;说明:如果要查询表中的所有列可以使用“*”标识。(3)查询成绩大于90分的学生学号。SELECT学号FROM成绩WHERE分数>90;(4)给出在计算机系或外语系学习的男学生的学号。SELECT学号FROM学生WHE
5、RE性别='男'AND(院系='计算机系'OR院系='外语系');或者:SELECT学号FROM学生WHERE性别='男'AND院系in('计算机系','外语系')(5)检索出分数在60~100分范围内的成绩信息。SELECT分数FROM成绩WHERE分数>=60AND分数<=100;或者:SELECT分数FROM成绩WHERE分数BETWEEN60AND100说明:表达式“分数BETWEEN60ANDl00”等价于(分数>=60)AND(分数<=100)8(6)从“学生”表中检索出姓“张”的学生信息。SELECT*FR
6、OM学生WHERE姓名LIKE'张%';注意:这里的LIKE是字符串匹配运算符,后面跟通配符“%”或者“_”,其中:通配符“%”表示任意长度(0个或多个的)字符,通配符“_”(下划线)表示任意一个字符。(7)从“学生”表中检索出姓名的第二个字为“小”字的女生的信息。SELECT*FROM学生WHERE姓名LIKE'_小%'AND性别=’女’(8)找出尚未确定分数的成绩信息。SELECT*FROM成绩WHERE分数ISNULL;注意:查询空值时要使用“ISNULL”,用“=NULL”是无效的,因为空值不是一个确定的数值,所
7、以不能用“=”这样的运算符进行比较。(9)列出已经确定了分数的成绩信息。SELECT*FROM成绩WHERE分数ISNOTNULL;2)排序查询(1)按学生的分数升序检索出全部成绩信息。SELECT*FROM成绩ORDERBY分数ASC;说明:分数为NULL的会排在最前面。(2)按学生的分数升序检索成绩,列出前3个学生的学号和分数。SELECTTOP3学号,分数FROM成绩ORDERBY分数ASC;(3)先按学号排序,再按分数排序输出全部学生成绩信息。SELECT*FROM成绩ORDERBY学号,分数;3)使用聚合(聚集
8、)函数的查询聚合函数——对一组值执行计算并返回单一的值。聚合函数主要包括:COUNT——计数;SUM———求和;AVG—一计算列值的平均值;8MAX——求最大值;MIN——求最小值等。(1)查询计算机系学生总人数。selectcount(*)as总人数from学生where院系='计算机系'(2)查询选修了1号课程的
此文档下载收益归作者所有