




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关系数据库语言 SQL 关系数据库语言 SQL 结构化查询语言SQL StructuredQueryLanguageSQL已不限于查询 还包括数据操纵 定义 控制和管理等功能 它是一个综合的 通用的 功能极强的关系数据库语言 国际标准化组织 ISO 89年公布了SQL语言的国际标准 SQL89 我国也制定了类似的标准 SQL89 实际系统大都对SQL语言作了扩充 SQL语言的特点 非过程化SQL语言是非过程化语言 第四代语言 一体化SQL集DDL DML DCL为一体 用SQL语言可实现DB生命周期的全部活动 因实体 联系均用关系来表示 这种数据结构的单一性也带来了DB语言的统一性 两种使用方式 统一的语法结构 联机交互使用方式 嵌入某种高级程序设计语言 表格实例之一 选课 学号 课程号 成绩 sc sno cno grade 课程 课程号 课程名 学分 上课时间 名额 course cno cname credit ctime quota 系 系号 系名 电话 dep dno dname tel 学生 学号 姓名 性别 出生年月 系号 student sno sname sex birthday dno 表格实例之二 emp eno ename sex age sal mgr dno 职工职工号姓名性别年龄工资领导部门号其中 mge为职工的上一级领导 即上一级领导的职工号 建立表对象 CREATETABLEstudent snoNUMBER 6 snameCHAR 6 sexCHAR 2 birthdayDATE dnoCHAR 3 insertintostudentvalues 980001 李力 男 17 12月 1980 d01 INSERTINTOempVALUES e01 李宏 男 32 580 0 e100 d02 INSERTINTOemp eno ename dno VALUES eo1 王兰 d01 UPDATEempSETsal sal 1 1WHEREdno d01 DELETEFROMempWHEREdno d01 DML语句 DB写语句 Select语句 SELECT FROMstudentWHEREsex 男 ANDdno D01 查询的结果仍可看成是一个关系 它由查出的记录组成 查询语句中的投影操作 SELECTsno sname dnoFROMstudentWHEREsex 男 该语句输出如下 snosnamedno980001张自立d01970020李春生d02 查询语句中的选择操作 例 查询79 80两年出生的男同学的名单 SELECTsname birthdayFROMstudentWHEREsex 男 ANDbirthdayBETWEEN 01 1月 79 AND 31 12月 80 查询1980年以前出生的学生 SELECT FROMstudentWHEREbirthday 01 1月 1980 SQL语句中的运算符 算术运算符 逻辑运算符 与AND 或OR 非NOT比较符 其他运算符 IN NOTIN判断是否是集合的成员 BETWEEN AND 判断列值是否满足指定的区间LIKE匹配模式 IS NOT NULL测试空值 查询语句中的选择操作 在查询条件中 可以使用集合运算符SELECTdname telFROMdepWHEREdnameIN 计算机系 外语系 中文系 该表达式等同于 dname 计算机系 ORdname 外语系 ORdname 中文系 集合运算符NOTIN是IN的反义词 WHEREdnameNOTIN 计算机系 外语系 中文系 查询语句中的选择操作 空值查询学号为980001的同学正在学习的课程 SELECTcnoFROMscWHEREsno 980001ANDgradeISNULL 模糊匹配 表示任意一个字符 表示任意个字符 包括0个 例如 查询姓王的同学信息 SELECT FROMstudentWHEREsnameLIKE 王 查询的排序输出 查询学生c01课程的成绩 并按成绩由高到低的顺序输出 SELECTsno grade 输出学号和成绩 FROMscWHEREcno c01 andgradeISNOTNULLORDERBYgradeDESC 排序输出的隐含顺序是升序 ASC 如果要求按列值的降序输出 需在列名后指定DESC 5 多表查询与连接操作 joins 笛卡尔积操作将结果关系扩展 如果笛卡尔积的两关系元组数分别为m和n 那么结果关系的元组数为m n 而在处理中往往只是需要其中部分元组 连接 Join 操作是从笛卡尔积中选择满足条件的元组 最常用的条件是等值连接 Select fromstudent depwherestudent dno dep dno dno student dep 多表查询与连接操作 表之间的连接操作 通常是自然连接 体现在WHERE子句中的连接条件 例 查询计算机系的学生信息SELECTsno sname sexFROMstudent depWHEREstudent dno dep dnoANDdname 计算机系 查询物理课不及格的学生名单 输出学生的学号 姓名及成绩 SELECTstudent sno sname gradeFROMstudent sc courseWHEREcname 物理 ANDgrade 60ANDo oANDsc sno student sno 在该例中 查询的结果来自两张表 而决定查询结果的因素涉及到三张表的信息 当一个查询涉及到几个关系时 为了区别不同表中的同名属性 我们可以在属性名前冠以关系名 多表查询与连接操作 聚合操作 聚合是把关系作为运算对象的另一类操作 是对关系中的列值进行统计工作 最终得到一个统计值 例如求职工的平均年龄 求职工的工资总额等 常用5种聚合的操作符 SUM 对某列的值求和 AVG 求某列值的平均值 MIN 求某列值的最小值 MAX 求某列值的最大值 COUNT 统计某列值的个数 计数 例 统计职工的工资总额 SELECTSUM sal FROMemp 例 求职工的最高工资 最低工资和平均工资 SELECTMAX sal MIN sal AVG sal FROMemp 例 求女学生的学生总数 SELECTCOUNT FROMstudentWHEREsex 女 d01 d02 d01 d03 d01 d01 21 d02 18 19 20 21 18 22 sum count 聚合操作 聚合操作 查询有多少名同学物理课不及格 SELECTCOUNT sno FROMsc courseWHEREcname 物理 ANDo oANDgrade 60 聚合操作 求每个系的学生数而不是求学生总数 希望得到下面的输出 dnocount d01120d0265 SELECTdno count FROMstudentGROUPBYdno d01 d01 d01 d02 d02 d01 980001 d02 980003 980002 980004 981001 981003 981002 dno count count 聚合操作 查询每个学生已获得的学分 注 成绩及格即取得相应课程的学分 SELECTsno sum credit FROMsc courseWHEREgrade 60ANDo oGROUPBYsno 子查询 查询物理系的学生名单 非子查询 SELECTsnameFROMstudent depWHEREdname 物理系 ANDdep dno student dno 子查询 SELECTsnameFROMstudentWHEREdno SELECTdnoFROMdepWHEREdname 物理系 子查询 SQL提供的对于关系的操作符 并产生一个布尔型的结果 例如 EXISTSR是一个条件 当且仅当关系R不空时为真 集合运算符IN NOTIN 子查询 例 查体育课不及格的男生名单 SELECTsnameFROMstudentWHEREsex 男 ANDsnoIN SELECTsnoFROMscWHEREgrade 60ANDcnoIN SELECTcnoFROMcourseWHEREcname 体育 查找年龄在50岁以上 工资小于本部门平均工资的职工 输出他们的姓名 年龄 工资 SELECTename age salFROMempWHEREage 50andsal SELECTavg sal
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江苏张家港检验认证有限公司招聘1人考前自测高频考点模拟试题及一套答案详解
- 浙江国企招聘截止9月23日可笔试历年参考题库附带答案详解
- 浙江国企招聘2025年台州市椒江区市场开发服务中心(台州市椒江区心海市场管理有限公司)公开招聘工作人员笔试及笔试历年参考题库附带答案详解
- 2025黄山黟县桃花源人才服务有限公司招聘劳务派遣工作人员1人笔试历年参考题库附带答案详解
- 2025陕西九州通医药有限公司招聘10人笔试历年参考题库附带答案详解
- 2025重庆秀山县县属国有企业招聘(918922)笔试历年参考题库附带答案详解
- 2025重庆市地质矿产勘查开发集团有限公司招聘62人笔试历年参考题库附带答案详解
- 2025鄂尔多斯市交通投资有限公司苏乌段一级公路收费所招聘笔试历年参考题库附带答案详解
- 2025贵州省余庆水投劳务服务有限责任公司招聘劳务派遣人员笔试历年参考题库附带答案详解
- 2025福建泉州丰泽教育管理集团有限公司从事丰泽机关幼儿园丰盛园教学工作国企派遣员工专项招聘16人笔试历年参考题库附带答案详解
- 2025合伙制合同协议书
- 福建省全国名校联盟2026届高三上学期联合开学摸底考试语文试题及参考答案
- 心血管衰老的分子机制探索
- 医院收费室培训课件
- 重点小学小学语文毕业总复习小升初资料大全
- 高原健康培训课件
- 第一次月考2024-2025学年度九年级英语
- 小班区域观察记录表30篇
- 转子泵培训课件
- 二级公立医院绩效考核三级手术目录(2020版)
- 司美格鲁肽学习课件
评论
0/150
提交评论