数据库原理(3)

合集下载

《数据库原理与应用》(第三版) 课件 第3章 数据库设计技术

《数据库原理与应用》(第三版) 课件 第3章 数据库设计技术
再分解了)。自顶向下的SA方法是从整个系统开始,采用逐层分解的方式对系统进行
分析的方法。
2023/9/9

3.2需求分析
2.数据流图(data flow diagram)
◆ SA方法只是对问题分析的一种思想,在具体的分析过程中还需要借助其他 的分析工具,这样才能完成对分析过程和结果的记录、对用户需求的表达
系统调研也称项目调研,即把系统开发当作项目来运作,其主要目的是通过接 触用户以了解并最终明确用户的实际需求。这个过程是一个系统分析人员理解
和掌握用户业务流程的过程,是一个需要不断与用户进行沟通和磋商的过程。
系统调研方法比较灵活,因人、因系统而异。大致过程可以分为以下几个步骤
来完成:
2023/9/9
3.2需求分析
第3章数据库设计技术
· 3.1数据库设计概述
·3.2需求分析
· 3.3数据库结构设计 · 3.4数据库的实施、运行和维护
2023/9/9
第三章数据库设计技术
3.1数据库设计概述
◆数据库设计是指在现有的应用环境下,从建立问题的概念模型开始,
逐步建立和优化问题的逻辑模型,最后建立其高效的物理模型,并据 此建立数据库及其应用系统,使之能够有效地收集、存储和管理数据 ,满足用户的各种应用需求。
的。所有这些结果都应该跟用户确认后予以书面形式确定下来。
2023/9/9
3.2需求分析
3.2.2需求分析的方法
1.SA方法
针对数据库设计,形成用户需求的有效表达,这种表达在说明书中多以数据流图、数
据字典等形式来描述。
为建立用户需求的表达,可以采用多种分析方法来完成。这些方法主要包括自顶向下
和自底向上两种方法,其中常采用的方法是自顶向下的结构化分析方法(structured analysis,SA)。

陕西师范大学—学年第二学期期末考试数据库原理(3)

陕西师范大学—学年第二学期期末考试数据库原理(3)

陕西师范大学2005—2006学年第二学期期末考试 计算机科学学院2003级计算机科学与技术专业数据库原理(C )答卷注意事项:、学生必须用蓝色(或黑色)钢笔、圆珠笔或签字笔直接在试题卷上答题。

2、答卷前请将密封线内的项目填写清楚。

3、字迹要清楚、工整,不宜过大,以防试卷不够使用。

4、本卷共 5 大题,总分为100分。

一、单项选择题(将一个正确的答案代码填入括号中,每小题1分,共15分)(1)数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统、( )和用户组成。

A 、系统分析员B 、程序员C 、数据库管理员D 、操作员 (2)下述( )不是DBA 数据库管理员的职责。

A 、完整性约束说明 B 、定义数据库模式 、数据库安全 D 、数据库管理系统设计 (3)关系代数运算是以( )为基础的运算 。

A 、关系运算B 、谓词演算C 、集合运算D 、代数运算 (4)关系代数中的连接操作是由( )操作组合而成 。

A 、选择和投影B 、选择和笛卡尔积C 、投影、选择、笛卡尔积D 、投影和笛卡尔积 (5)在视图上不能完成的操作是( )。

A 、更新视图B 、查询C 、在视图上定义新的表D 、在视图上定义新的视图(6)设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100。

若要把“张二的化学成绩80分”插入S中,则可用()。

A、ADD INTO S VALUES(’张二’,’化学’,’80’)B、INSERT INTO S VALUES(’张二’,’化学’,’80’)C、ADD INTO S VALUES(’张二’,’化学’,80)D、INSERT INTO S VALUES(’张二’,’化学’,80)(7)如果关系模式R中的属性全是主属性,则R可能属于的最高范式是()。

A、1NFB、2NFC、3NFD、BCNF(8)学生表(id,name,sex,age,depart_id,depart_name),存在的函数依赖是id→{name,sex,age,depart_id},dept_id→dept_name,则学生表属于()。

数据库系统原理第三章同步练习

数据库系统原理第三章同步练习

性。
8. 消除了非主属性对候选键局部依赖的关系模式, 9. 两个函数依赖集F和G等价的充分必要条件是
10. 消除了每一属性对候选键传递依赖的关系模
式称为 BCNF 模式
11. 一个关系模式属于 4NF ,它必定属于BCNF。
A. 互不相关的
B. 不可分解的
C. 长度可变的
D. 互相关联的
6. 假设关系模式R(A,B)属于3NF,下列说法( B )
是正确的
A. 它一定消除了插入和删除异常
B. 仍存在一定的插入和删除异常
C. 一定属于BCNF
D. A和C
7. 设有关系W(工号, 姓名, 工种, 定额), 将其规范
化到第三范式正确的答案是( C )
1NF变成了3NF
A. 局部函数依赖和传递函数依赖
B. 完全函数依赖和传递函数依赖
C. 完全函数依赖
D. 局部函数依赖
13. 下述说法正确的是( D )
A. 属于BCNF的关系模式不存在存储异常
B. 函数依赖可由属性值决定,不由语义决定
C. 超键就是候选键
D. 键是唯一能决定一个元组的属性或属性组
一、单项选择题
1. 当B属性函数依赖于A属性时,属性A与B的联
系是(B )
A. 一对多
C. 多对多
B. 多对一
C. 以上都不是
2. 关系模式R中的属性全部是主属性,则R的最高
范式必定是(B )
A. 2NF
B. 3NF
C. BCNF
D. 4NF
3. 在关系模式R(A,B,C,D)中,有函数依赖集F={
Z=U-X-Y,则 X →→Z
5. 若关系模式R已属于第一范式,且其中的每一

3数据库原理与应用教程—SQL Server数据库__考试题目(3)

3数据库原理与应用教程—SQL Server数据库__考试题目(3)

数据库原理与应用教程―SQL Server习题解答3.4 习题1.关系数据模型由哪三个要素组成。

答:关系数据模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。

2.简述关系的性质。

答:(1) 列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。

(2) 在同一个关系中,不同的列的数据可以是同一种数据类型,但各属性的名称都必须是互不相同。

(3) 同一个关系中,任意两个元组都不能完全相同。

(4) 在一个关系中,列的次序无关紧要。

即列的排列顺序是不分先后的。

(5) 在一个关系中,元组的位置无关紧要。

即排行不分先后,可以任意交换两行的位置。

(6) 关系中的每个属性必须是单值,即不可再分,这就要求关系的结构不能嵌套。

这是关系应满足的最基本的条件。

3.简述关系的完整性。

答:关系模型允许定义三类完整性约束:实体完整性、参照完整性和用户自定义的完整性约束。

实体完整性规则要求关系中元组在组成主码的属性上不能有空值。

参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S 的主码Ks相对应(基本关系R和S可能是相同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。

用户定义的完整性规则由用户根据实际情况对数据库中数据的内容进行的规定,也称为域完整性规则。

4.传统的集合运算和专门的关系运算都有哪些。

答:(1) 传统的集合操作:并、差、交、笛卡儿积。

(2)专门的关系操作:投影(对关系进行垂直分割)、选择(水平分割)、连接(关系的结合)、除法(笛卡儿积的逆运算)等。

5.根据给定的关系模式进行查询。

设有学生-课程关系数据库,它由三个关系组成,它们的模式是:学生S(学号S#,姓名SN,所在系SD,年龄SA)、课程C(课程号C#,课程名CN,先修课号PC#)、SC(学号S#,课程号C#,成绩G)。

请用关系代数分别写出下列查询:(1)检索学生的所有情况。

数据库原理实验报告-实验三-数据完整性与安全性控制

数据库原理实验报告-实验三-数据完整性与安全性控制

《数据库原理》实验报告题目:实验三数据完整性与安全性控制学号班级日期2016.10.18一、实验容、步骤以及结果1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。

(18分,每小题3分)(1)非空约束:为出生日期添加非空约束。

非空约束:取消表S中sbirth的勾。

可能需要重建表。

(2)主键约束:将学号(sno)设置为主键,主键名为pk_sno。

设主键:单击数据库Student-->单击表-->单击S-->右击sno-->选择‘修改’命令-->对话框中右击sno-->选择‘设置主键’-->修改主键名为‘pk_sno’-->保存(3)唯一约束:为(sname)添加唯一约束(唯一键),约束名为uk_sname。

唯一约束:单击数据库Student-->单击表-->单击S-->右击sname-->选择‘修改’命令→右击sname-->选择‘索引和键’命令-->打开‘索引和键’框图-->添加-->是否唯一改为‘是’-->名称改为‘us_sname’-->关闭。

(4)缺省约束:为性别(ssex)添加默认值,其值为“男”。

设默认约束:单击数据库Student→单击表→单击S→右击sno→选择‘修改’命令→单击cno-->在默认值栏输入‘男’→保存(5)CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为ck_grade,其检查条件为:成绩应该在0-100之间。

(6)外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表和C表,外键名称分别为fk_sno,fk_cno。

2.在图形用户界面中删除以上小题中已经创建的各种约束,用SQL语言分别重新创建第1题中的(2)-(6)小题.(15分,每小题3分,提示:alter table add constraint)删除约束:单击数据库Student-->表-->单击S-->展开键、约束。

数据库原理实验报告(3)实验三数据表的创建与管理实验

数据库原理实验报告(3)实验三数据表的创建与管理实验

数据库原理实验报告(3)实验三数据表的创建与管理实验南京晓庄学院《数据库原理与应⽤》课程实验报告实验三数据表的创建与管理实验所在院(系):数学与信息技术学院班级:学号::1.实验⽬的(1)理解SQL Server 2005常⽤数据类型和表结构的设计⽅法。

理解主键、外键含义,掌握建⽴各表相关属性间参照关系的⽅法。

(2)熟练掌握使⽤SQL Server Management Studio图形⼯具创建表,删除表,修改表结构,插⼊及更新数据的⽅法。

(3)熟练掌握使⽤Transact-SQL语句创建表,删除表,修改表结构,插⼊及更新数据的⽅法。

2.实验要求基本实验:(1)在实验⼆所创建的“TM”数据库中合理设计以下各表逻辑结构:学⽣信息(学号,,性别,籍贯,出⽣⽇期,民族,学院/系别号,班级号)课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时)学习信息(学号,课程号,考试成绩,平时成绩)院系信息(院系号,院系名称)要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。

(2)依据你所设计的表结构,使⽤SQL Server Management Studio图形⼯具在“TM”数据库中创建学⽣信息表和课程信息表,并试验在图形界⾯中修改表结构,删除数据表,输⼊并更新数据的⽅法。

(3)依据你所设计表结构,使⽤Transact-SQL语句创建学习信息表和院系信息表,并试验使⽤T-SQL语句修改表结构,删除数据表,插⼊和更新数据的⽅法。

(4)找出已创建各表之间相关属性的参照关系,并在相关表中增加引⽤完整性约束。

(5)按要求完成实验报告。

扩展实验:(1)在“TM”数据库中补充设计以下各表结构:教师信息(教师号,,性别,出⽣⽇期,学历,学位,⼊职时间,职称,院系号)授课信息(教师号,课程号,学期)班级信息(班级号,班级名称,专业号)专业信息(专业号,专业名称,学制,学位)图书信息(图书号,书名,作者,,出版⽇期,册数,价格,分类)借书偏息(学号,图书号,借出时间,归还时间)奖励信息(学号,奖励类型,奖励⾦额)(2)设计并实现各表之间相关属性的参照关系。

数据库原理及应用 书本答案 单元 (3)

数据库原理及应用 书本答案 单元 (3)

选择题1、D。

全码的定义:若关系中只有一个候选码,且这个候选码中包含全部属性,则该候选码为全码。

所以D选项正确。

2、C。

关系有如下几条性质:⑴、关系中的每一个属性值都是不可分解的⑵、关系中不允许出现重复行⑶、行列无序⑷、列是同质的,即这一列具有相同的数据类型由以上四点性质可知,C选项正确。

3、A。

关系的完整性有以下几条规则:⑴、实体完整性规则:若属性A是基本关系R的主码所包含的属性,则属性A不能取空值。

(注:主码不能为空,且主码整体取值也不空)⑵、参照完整性规则:如果属性集K是关系模式R1的外键,同时K也是关系模式R2的属性,但不是R2的主键,那么K为R2的外键。

在R2关系中,K的取值只允许有两种可能:①、空值;②、不为空时,等于R1关系中某个主键值。

⑶、用户自定义的完整性规则:用户针对具体的数据约束,设置完整性规则。

同第二章数据模型课后练习选择题第八题答案相同,所以A选项正确。

4、A。

关系数据库系统是支持关系模型的数据库系统,故关系数据库用关系实现数据之间的联系,所以A选项正确。

5、C。

在关系中,列是同质的,所以每一列的分量必须是相同的数据类型,故A选项不正确;在关系中,行、列无序,所以列的顺序改变,关系的含义不会发生变化,故B选项不正确;在关系中,不允许出现重复行,所以任意两个元祖的对应属性不允许相同,故C选项正确;关系的性质中不包含“关系来自笛卡尔积的全部元祖”这条性质,故D选项不正确。

6、D。

关系代数的操作分为两类:⑴、传统的集合操作:并、交、差、笛卡尔积⑵、专门的关系运算:投影、选择、连接、除法交:假设有关系R和S,R和S的交记为R∩S,由于R∩S=R-(R-S),因此交操作不是一个独立的操作,所以交操作不是一个基本操作。

除法:设关系R和S分别为r元和s元关系(设r>s>0),①、T=π1,2,···,r-s(R);②、W=(T×S)-R;③、V=π1,2,···,r-s(W);④、R÷S=T-V所以除法也不是一个独立的操作,即不是一个基本操作。

数据库原理第三章练习

数据库原理第三章练习

第三章SQL语言一、选择题:1、SQL语言是的语言,易学习。

A.过程化 B.非过程化C.格式化 D.导航式2、SQL语言是语言。

A.层次数据库 B.网络数据库C.关系数据库 D.非数据库3、SQL语言具有的功能。

2、关系规范化,数据操纵,数据控制B.数据定义,数据操纵,数据控制C.数据定义,关系规范化,数据控制D.数据定义,关系规范化,数据操纵4、SQL语言具有两种使用方式,分别称为交互式SQL和。

A.提示式SQL B.多用户SQLC.嵌入式SQL D.解释式SQL5、SQL语言中,实现数据检索的语句是。

A.SELECT B.INSERTC.UPDATE D.DELETE6、下列SQL语句中,修改表结构的是。

A.ALTER B.CREATEC.UPDATE D.DELETE7、SQL中,与“NOT IN”等价的操作符是。

A.=SOME B.<>SOMEC.=ALL D.<>ALL8、假设有三个基本表:学生表S、课程表C、学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)检索所有比“王华”年龄大的学生姓名、年龄和性别。

正确的SQL语句是。

A.SELECT SN,AGE,SEXFROM SWHERE AGE>(SELECT AGE FROM SWHERE SN=”王华”)B.SELECT SN,AGE,SEXFROM SWHERE SN=”王华”C.SELECT SN,AGE,SEXFROM SWHERE AGE>(SELECT AGEWHERE SN=”王华”)D.SELECT SN,AGE,SEXFROM SWHERE AGE>王华.AGE9、检索选修课程”C2”的学生中成绩最高的学生的学号。

正确的SELECT语句是。

A.SELECT S#FROM SCWHERE C#=”C2” AND GRADE>=(SELECT GRADE FROM SCWHERE C#= “C2”)B.SELECT S#FROM SCWHERE C#=”C2” AND GRADE IN(SELECT GRADE FROM SCWHERE C#= “C2”)C.SELECT S#FROM SCWHERE C#=”C2” AND GRADE NOT IN(SELECT GRADE FROM SCWHERE C#= “C2”)D.SELECT S#FROM SCWHERE C#=”C2” AND GRADE>=ALL(SELECT GRADE FROM SCWHERE C#= “C2”)10、检索学生姓名及其所选修课程的课程号和成绩。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三章 关系数据库SQL 语言1.1 SQL 的发展历程:1970年IBM 研究中心E. F. Codd 连续发表多篇论文,提出关系数据模型;1972年IBM 开始研制实验型关系数据库管理系统System R ,配套的查询语言为SQUARE (Specifying Queries As Relation Expression ),数学符号较多。

1974年Boyce 和Chamberlin 把SQUARE 语言修改为SEQUEL (Structured English Query Language ),去掉了一些数学符号,并采用英语单词表示和结构式的语法规则。

70年代末由于SQL 语言的使用方便、功能丰富、语言简洁易学,得到了很快的应用和推广;SEQUEL 简称为SQL (Structured Query Language ),称为结构式查询语言。

实际上,SQL 具有定义、查询、更新和控制等多种功能。

1986年美国国家标准局颁布了美国标准的SQL 语言;1987年被国际标准化组织采纳为国际标准,两个标准称为SQL 86。

1989年ISO 颁布了增强完整性特征的SQL 89标准。

SQL 86 89标准中,基本表没有关键码的概念,而是采用索引机制弥补。

1992年ISO 在SQL 89进行了大量的修改和扩充,推出了SQL 92,也称为SQL 2,SQL 3的标准正在进行当中。

1.2 SQL 数据库的体系结构:外模式概念模式内模式子模式关系模式存储模式元组属性模式视图基本表存储文件行列SchemaView Base table Stored File Row ColumnSQL 数据库由表构成,表可以是基本表,也可以是视图。

在用户看来,视图和基本表是一样的,都是关系(表格)。

基本表是实际存储在数据库中的表。

一个基本表可以跨一个或多个存储文件,一个存储文件也可以在存放一个或多个基本表,无需一一对应。

在SQL 中,外模式一级数据结构的基本单位是视图,视图是从若干个基本表和/或其它视图构造出来的,所以视图又被称为虚表。

1.3 SQL 的组成:数据定义:SQL DDL ,用于定义SQL 模式、基本表、视图和索引。

数据操纵:SQL MML ,又分为数据查询和数据更新两大类。

数据控制:该部分包括对基本表和视图的授权,完整性规则的描述,事务控制等。

嵌入式SQL 的使用规定:该部分内容涉及SQL 语句嵌入在宿主语言程序中使用的规则。

2.SQL 的数据定义2.1 SQL 模式的创建和撤消:SQL 模式(数据库模式)指的是基本表的集合。

一个模式由模式名和模式拥有者的用户名或帐号来确定,并包括模式中每一个元素(基本表、索引等)的定义。

创建了一个SQL 模式,就是定义了一个存储空间。

创建一个SQL 模式,句法为:Create schema <模式名> authorization <用户名>撤消SQL 模式,句法为:Drop schema <模式名> cascade /restrict Cascade :层叠方式,把SQL 模式及其下属的基本表、视图、索引等所有元素全部撤消;v. Drop 做动词时,有删除的意思。

Restrict :约束式,只有当SQL 模式没有任何下属元素时,才撤消SQL 模式,否则拒绝执行。

2.2 SQL 的基本数据类型:数值型:INT长整数SMALLINT 短整数REAL浮点数DOUBLE PRECISION双精度浮点数FLOAT (n)精度为n 位数字的浮点数NUMERIC(p,d)定点数,由p 位数字组成,小数点后面有d 位数字,也可写成DECIMAL(p,d);Numeric 数字的,Decimal 小数的字符串型:CHAR(n)长度为n 的定长字符串VARCHAR(n)具有最大长度为n 的变长字符串位串型:BIT(n)长度为n 的二进制位串BIT VARYING(n)最大长度为n 的变长二进制位串时间型:DATE形为YYYY-MM-DD 的日期TIME形为HH:MM:SS 的时间2.3 基本表的创建、修改和撤消:基本表的创建:CREAT TABEL SQL 模式名. 基本表名主键子句PRIMARY KEY(列名,数据类型,…,完整性约束)完整性约束有三种子句检查子句CHECK外键子句FOREIGN KEY*SQL 允许列的值为空值,但要求主键不能为空,如果要求不能为空值,则应在数据类型后加“NOT NULL ”说明。

基本表创建好后,用INSERT 命令把数据插入基本表中。

基本表结构的修改:ALTER TABEL 基本表名 ADD 列名 类型在基本表中增加一列ALTER TABEL 基本表名 DROP 列名 CASCADE/ RESTRICT Cascade :将引用该列的视图和约束全部一起删除;Restrict :约束式,只有当该列没有视图或约束引用,才能删除。

基本表的撤消:DROP TABLE 基本表名 CASCADE/ RESTRICT*一个基本表撤消后,其所有的数据也一并丢失。

2.4 视图的创建和撤消:如用户经常要用到S 、SC 、C 的其中几列,可以单独创建一个视图:视图的创建:CREAT VIEW 视图名(列名表)*列名表可省略。

CREATE VIEW STUDENT (S#,SNAME ,CNAME ,GRADE )AS SELECT 查询语句AS SELECT S. S#,SNAME ,CNAME ,GRADE 视图的撤消:DROP VIEW 视图名FROM S, SC ,CWHERE S. S# =SC.S# AND SC. C# = C. C#2.5 索引的创建和撤消:在SQL 86和89中,基本表中没有关键码的概念,用索引机制弥补,索引属于存储的路径的概念;在SQL 中使用了主键的,在基本表中定义了主键。

索引的创建:CREAT [UNIQUE] INDEX 索引名 ON 基本表名(列名表)UNIQUE :要求列的值在基本给中不重复。

*一个索引键也可以对应多个列。

缺省为升序(ASC )排列,也可用降序(DESC )排列。

索引的撤消:DROP INDEX 索引名3.SQL 的数据查询数据查询是关系运算理论在SQL 语言中的主要体现,本节从SELECT 语句的基本句法、完整句法和各种限定三方面进行说明。

3.1 Select 语句的基本句法,联接查询、嵌套查询、存在量词方式的用法:SELECT A1, …,An 算术比较运算符,<,<=.=,!=,>,>=,<>FROM R1 ,…Rm 逻辑运算符,AND ,OR ,NOT WHERE F *其中,F 为条件表达式,比关系代数中的公式更灵活。

集合运算符,UNION(并),INTERSECT(交),EXCEPT(差)*且SELECT 语句可以嵌套使用,层次分明,具有结构程序设计特点。

集合成员运算符,IN ,NOT IN 且嵌套查询比联接查询的笛卡尔积效率高。

谓语,EXISTS(存在量词),ALL ,SOME ,UNIQUE(唯一)聚合函数,AVG ,MIN ,MAX ,SUM ,COUNT ,聚合函数不允许复合操作;联接查询:嵌套查询:嵌套查询的IN写法:嵌套查询的存在量词写法:SELECT S. S#,SNAME SELECT S#,SNAME SELECT S#,SNAME SELECT S#,SNAME FROM S, SC FROM S FROM S FROM S WHERE S. S# =SC. S#WHERE WHERE 'C2' IN WHERE EXISTSAND C# ='C' (SELECT S#(SELECT C # (SELECT *FROM SCFROM SC FROM SC WHERE C# ='C' )WHERE S# =S. S# )WHERE S# =S. S#详见P 62IN 后面用括号,表示它是一个集合;AND C# ='C' )NOT IN 也可用<>ALL 表示;3.2 Select 语句的完整句法,分组子句、排序子句的用法:SELECT 目标表的列名或列表达式序列1、读取FROM 子句中基本表、视图的数据,执行笛卡尔积操作;FROM 基本表和/或视图序列2、选取满足WHERE 子句中给出的条件表达式的元组;[WHERE 行条件表达式]行条件子句3、按GROUP 子句中指定列的值分组,同时提取满足HAVING 子句中条件表达式的那些组;[GROUP BY 列名序列]分组子句4、按SELECT 子句中给出的列名或列表达式求值输出;[HAVING 组条件表达式]组条件子句5、ORDER 子句对输出的目标表进行排序,按附加说明ASC(升序排列),或DESC(降序排列);[ORDER BY 列名 ASC|DESC]排序子句*[ ]是指该成分可有可无。

分组子句:唯一排序子句:SELECT AGE, COUNT (DISTINCT S.S# )SELECT AGE, COUNT (S# )FROM S, SCFROM SWHERE S. S# = SC. S#WHERE SEX = 'M 'GROUP BY AGEGROUP BY AGE把满足WHERE 子句中条件的查询结果按年龄分组;HAVING COUNT (*)>50组条件子句,去掉小于等于50人的组;此时的SELECT 语句应对每一组分开进行操作;ORDER BY 2,AGE DESC对SELECT 子句中的第2个值进行升序排列,如人数相同则按降序排列。

3.3 Select 语句中的各种限定:如果我们要求输出的表格中不许出现重复元组,那么可在SELECT 后加一保留字DISTINCT .如:SELECT DISTINCT C# SELECT 子句允许包含+、-、*、/,以及列名、常数的算术表达式;列和基本表的改名操作:如一个基本表在SELECT 语句中多次出现,则可以用"SELECT 旧名 AS 新名"来改名,以方便操作;关系模型术语SQL 术语也是三级结构字符串的匹配操作:匹配操作符是"LIKE ",表达式中可以有两个通配符%(表示0个、或多个字符)和_(表示1个如:检索以D 开头的学生姓名:WHERE SNAME LIKE 'D%'如两个子查询结果的结构完全一致时,可让两个子查询执行并、交、差操作;如:(SELECT 查询语句1)UNION [ALL]ALL时,不消除重复元组;(SELECT 查询语句2)空值的比较操作:SQL 中允许列值为空,空值用保留字NULL 表示。

相关文档
最新文档