2022年数据库查询操作详解可用 .pdf
《2022年数据库查询操作详解可用 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库查询操作详解可用 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一 、数 据 查 询 - 单 表 查 询(1) 查 询语 句 格式Select all|distinct ,From ,where group by having order by asc|desc ; 注: all|distinct 中 all 为缺省值,取消结果中的重复列则用distinct;asc|desc中 asc为缺省值, 表示按照升序排列。对于空值, 若按照升序排,则含空值的元组显示在最后面;若按降序排,则空值的元组最先显示。(2) 查 询指 定 列a)查询部门表dept 中所有部门的详细信息,并且列名用汉字表示。 selectDNO, DNAME, ADDR fromdept;
2、b)查询部门表dept 中人力资源部的部门编号。selectDNO fromdept whereDNAME = 人力资源部 ;中各个列的先后顺序可以与表中的顺序不一致. (3) 查 询全 部 列查询全体学生的详细记录Select * From Student ; (4) 将 查询 结 果的 列 名用 别 名显 示查询部门表dept 中所有部门的详细信息,并且列名用汉字表示。 selectDNO 部门编号, DNAME 部门名称, ADDR 部门地址fromdept; (5) 在 查询 的 结果 中 插入 新 的一 列 用来 显 示指 定 的 内容Select Sname NAME , Year
3、 of Birth:BIRTH ,Sbirth BIRTHDAY ,Sdept DEPARTMENT From Stuent ; 则显示的结果中, 每个元组的第二列均为” Year of Birth: ” ,此列在原数据库中是不存在的. (6) 查 询经 过 计算 的 值Select 子句的 不仅可以是表中的属性列,也可以是表达式。例:查询全体学生的姓名及其出生年月Select Sname ,2004 Sage /*当时年份减去年龄为出生年月名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
4、 第 1 页,共 8 页 - - - - - - - - - From Stufent ; (7) 设 置查 询 显示 的 字母 全 为大 写 (或 小 写) Select Sname , Year of Birth: ,2004 Sage ,LOWER(Sdept) From Student ; 此时 Sdept 显示的结果全为小写Select Sname , Year of Birth: ,2004 Sage ,UPPER(Sdept) From Student ; 注:要设置查询表中的属性列名的大小写可以用LOWER,UPPER 。(8) 消 除取 值 重复 的 行a)查询雇员表empl
5、 中出现的所有部门编号,要求无重复。selectdistinctDNO fromEMPL ; b)查询项目表proj 中所有项目名称。selectPNAME fromPROJ 等价于select all PNAME fromPROJ (9) 查 询满 足 条件 的 元组常用的查询条件查询条件谓词比较=, , = , = ,!= , ,! , ! ,NOT+ 上述比较运算符确定范围Between and ,not between and 确定集合In , not in 字符匹配Like ,not like 空值NULL ,NOT NULL 多重条件 (逻辑运算 ) And ,or ,not 注:
6、 Between 后是范围的下限,and 后是范围的上限.查询结果中包含上下限的结果. a)查询成绩不及格的学生的学号Select distinct Sno From SC Where Grade 60 ; b)查询年龄在20 到 30(包含 20 及 30)之间的学生的姓名、系别和年龄Select Sname ,Sdept ,Sage From Student Where Sage between 20 and 30 ;c)查询计算科学系(CS) , 数学系 (MA) ,信息系 (IS)学生的姓名和性别名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
7、- - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - Select Sname ,Ssex From Student Where Sdept in ( CS , MA , IS ) ; (10) 含 通 配符 ” %” 的 查询%(百分号 ):代表任意长度 (长度可以为0)的字符串, 例如 a%b 代表以 a 开头且以 b 结尾的任意长度的字符串,acb ,afdsagasdsab ,ab都满足。例:查询雇员表empl 中姓名以“伟“字结尾的员工信息。select* fromEMPL whereENAME like% 伟;
8、(11) 含 通 配符 ” _” 的 查 询_(下划线 ):代表任意单个字符,例a_b 代表以 a 开头且以b 结尾的长度为3 的字符串。例:查询姓“欧阳”且全名3 个汉字的学生的姓名Select Sname From Student Where Sname like 欧阳 _ ; 注:一个汉字占两个字符的位置(12) 字 符 串本 身 含通 配 符 的查 询使用使用escape 。查询以 ” DB_” 开头,且倒数第三个字符为i 的课程的详细情况。Select * From Student Where Cname like DB_%i_ escape ; 注: escape 表示 ” 为换码
9、字符,则第一个” _” 是普通的字符,后两个” _” 表示通配符。(13) 涉 及 空值 的 查询例:查询所有有成绩的学生的学号Select Sno From SC Where Grade IS NULL ; 注:此处“ IS”不能用 ” =” 替代(14) 带 排 序的 查 询查询工作表job 中的工作信息,结果按工作天数升序排列。select* fromJOB orderbyDAYS asc; 等价于select* fromJOB 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
10、3 页,共 8 页 - - - - - - - - - orderbyDAYS asc; 查询雇员表empl 中所有员工的详细信息,结果按员工姓名降序排列。select* fromEMPL orderbyENAME desc;(15) 含 聚 集函 数 的查 询聚集函数主要有:Count (distinct|all *) / 统计元组个数Count (distinct|all ) / 统计一列中值的个数Sum (distinct|all ) / 计算一列值的总和(此列必须是数值型) Avg (distinct|all ) / 计算一列值的平均值(此列必须是数值型) Max (distinct|
11、all ) / 求一列值中的最大值Min (distinct|all ) / 求一列值中的最小值注: distinct|all 缺省时为all. 在聚集函数遇到空值时,除count(*)外,都跳过空值而只处理非空值. 例:查询1 号课程的学生的最高分数Select max(Grade) From SC Where Cno = 1 ; (16) 到 GROUP BY 子 句 的 查 询a)求各个课程号及相应的选课人数select Cno ,count(Sno) from SC group by Cno ; b)查询选修了3 们以以上的课程的学生的学号select Sno from SC crou
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据库查询操作详解可用 2022 数据库 查询 操作 详解 可用
限制150内