sql关系数据库语言.ppt_第1页
sql关系数据库语言.ppt_第2页
sql关系数据库语言.ppt_第3页
sql关系数据库语言.ppt_第4页
sql关系数据库语言.ppt_第5页
免费预览已结束,剩余26页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

关系数据库语言SQL,关系数据库语言SQL,结构化查询语言SQLStructuredQueryLanguageSQL已不限于查询,还包括数据操纵、定义、控制和管理等功能。它是一个综合的、通用的、功能极强的关系数据库语言。国际标准化组织(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=男ANDbirthdayBETWEEN01-1月-79AND31-12月-80;查询1980年以前出生的学生:SELECT*FROMstudentWHEREbirthday,=,其他运算符:IN,NOTIN判断是否是集合的成员。BETWEENAND判断列值是否满足指定的区间LIKE匹配模式_%ISNOTNULL测试空值,查询语句中的选择操作,在查询条件中,可以使用集合运算符SELECTdname,telFROMdepWHEREdnameIN(计算机系,外语系,中文系);该表达式等同于:dname=计算机系ORdname=外语系ORdname=中文系集合运算符NOTIN是IN的反义词,WHEREdnameNOTIN(计算机系,外语系,中文系);,查询语句中的选择操作,空值查询学号为980001的同学正在学习的课程:SELECTcnoFROMscWHEREsno=980001ANDgradeISNULL;模糊匹配。_表示任意一个字符表示任意个字符(包括0个)。例如,查询姓王的同学信息;SELECT*FROMstudentWHEREsnameLIKE王;,查询的排序输出,查询学生c01课程的成绩,并按成绩由高到低的顺序输出:SELECTsno,grade(输出学号和成绩)FROMscWHEREcno=c01andgradeISNOTNULLORDERBYgradeDESC;排序输出的隐含顺序是升序(ASC),如果要求按列值的降序输出,需在列名后指定DESC。,(5)多表查询与连接操作(joins),笛卡尔积操作将结果关系扩展,如果笛卡尔积的两关系元组数分别为m和n,那么结果关系的元组数为mn,而在处理中往往只是需要其中部分元组。连接(Join)操作是从笛卡尔积中选择满足条件的元组。最常用的条件是等值连接,Select*fromstudent,depwherestudent.dno=dep.dno,dno,student,dep,多表查询与连接操作,表之间的连接操作(通常是自然连接)体现在WHERE子句中的连接条件。例:查询计算机系的学生信息SELECTsno,sname,sexFROMstudent,depWHEREstudent.dno=dep.dnoANDdname=计算机系;,查询物理课不及格的学生名单(输出学生的学号、姓名及成绩):SELECTstudent.sn

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论