数据库-第二章2.ppt
文本预览下载声明
An Introduction to Database System 第二章 关系数据库 第二章 关系数据库 第二章 关系数据库 第二章 关系数据库 第二章 关系数据库 下课了。。。 * * 数据库系统概论 An Introduction to Database System 信息工程教研室 主讲:赵云 第二章 关系数据库 专门的关系运算 选择 投影 连接 除 关系演算语言 元组关系演算 域关系演算 2.4.1专门的运算 1.选择(Selection) 逻辑表达式F的基本表达形式也可以为: 其中 表示比较运算符,它可以是 等是属性名,或为常量,或为简单函数;属性名也可以用它的序号来代替。 例如1:查询信息系(IS系)全体学生 因为是查询全体学生,是对整个表进行横向的查找。 或 例如2:查询年龄小于20岁的学生 或 2. 投影(Projection) 关系R上的投影是从R中选择出若干属性列组成新的关系。记作: 其中A为R中的属性列 例3 查询学生姓名和所在系,即求Student关系在学生姓名和所在系的投影。 第二章 关系数据库 例4 查询学生关系Student中有那些系,即查询关系Student在所在系属性上的投影。 第二章 关系数据库 3 连接 连接也称为 连接。它是从两个关系的笛卡儿积中选取属性间满足一定条件的元组。记作: 其中A和B分别为R和S上度数相等且可比的属性组。是比较运算符。连接运算从R和S的广义笛卡儿积 中选取在A属性组上的值与S关系在B属性组上的值满足比较关系 的元组 第二章 关系数据库 等值连接 当 的连接称为等值连接。它是从关系R与S的广义笛卡儿积中选取A,B属性值相等的那些元组,即等值连接 自然连接 是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,即若R和S具有相同的属性组B,则自然连接为: 第二章 关系数据库 例5 设下图分别为关系R和关系S,求 第二章 关系数据库 第二章 关系数据库 第二章 关系数据库 4 除 给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上的投影:元组在X上分量值x的象素 包含S在Y上的投影的集合。记作: 其中 第二章 关系数据库 例6 设关系R,S分别为下图所示,求 求解步骤:在关系R中,A可以取出四个值(a1,a2,a3,a4) 其中a1的象集为{(b1,c2),(b2,c3),(b2,c1)};a2 的象集为{(b3,c7),(b2,c3)} a3 的象集为{(b4,c6)},a4 的象集为{(b6,c6)};S在(B,C)上的投影为{(b1,c2),(b2,c3),(b2,c1)}显然只有a1的象素(B,C)包含了S在(B,C)属性组上的投影,所以结果为S={a1} 第二章 关系数据库 例7 查询至少选修1号课程和3号课程的学生号码 首先建立一个临时关系K: 然后求: 结果为{95001} 第二章 关系数据库 例8 查询选修了2号课程的学生的学号 例9 查询至少选修了一门其直接先行课为5号课程的学生姓名 例10 查询选修了全部课程的学生号码和姓名 第二章 关系数据库 第二章 关系数据库 2.5.1元组关系演算语言ALPHA GET,PUT,HOLD,UPDATE,DELETE,DROP 基本格式:操作语句 工作空间名(表达式):操作条件 1.检索操作 (1).简单检索(不带条件的检索) 例1.查询所有被选修课程的课程号码。 GET W (SC.Cno) 第二章 关系数据库 例2:查询所有学生的数据 Get W (Student) (2).限定的检索 例3 查询信息系中年龄小于20岁的学生的学号和年龄。 GET W (Student.Sno, Student.Sage): Student.Sdept= (3).带排序的检索 查询计算机科学系学生的学号,年龄,并按年龄降序排列 GET W(Student.Sno,Student.Sage): Student.Sdept=‘CS’ DOWN Student.Sage 第二章 关系数据库 (4).带定额的检索 例5.取出一个信息系学生的学号。 GET W (1) (Student.Sno):Student.S
显示全部