网站大量收购闲置独家精品文档,联系QQ:2885784924

SQL课件第4讲关系模型.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关系模型 专门的关系运算 专门的关系运算包括选择、投影、连接、除等,这些运算可以灵活地实现关系数据库中多样的查询操作。 选择(Selection) 选择是在关系R中选择满足给定条件的诸元组,构成一个新关系。 选择是从行的角度进行的运算。 σ是选择运算符,选择条件是逻辑表达式 例如: 从R中,查找金融98班的学生基本情况。 σ班级=‘金融98’(R) 投影(Projection) 关系R上的投影是从R中选择出若干属性列组成新的关系。  投影操作是从列的角度进行的运算。 π是投影运算符,属性集可以由多个属性组成,中间用逗号隔开。 注意:投影结果中要去掉相同的行 例如、从R的关系中选取学生所在班级情况。 π学号,班级(R) 值得注意的是,经过投影运算所形成的新关系中不含重复元组,投影之后属性减少了,元组也可能减少,所以要给以不同的关系名,且原关系和新关系不是同类关系; 选择是在水平方向对元组进行的运算,投影则是在垂直方向对属性进行的运算。 连接(Join) 按给定条件,把满足条件的两个关系所有元组,按一切可能的拼接后形成的新关系,记为R∞S。 即 R∞连接条件S=σ连接条件(R ? S) 连接条件为:=,, ≤,,≥,≠ 当连接条件不为“=”时,称非等值连接。 当连接条件为“=”时,称等值连接。 非等值连接也称为θ连接。它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作: 连接运算从R和S的笛卡尔积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系θ的元组。 等值连接 从关系R和S的笛卡尔积中选取A,B属性值相等的元组 自然连接 特殊的等值连接,从两个关系的广义笛卡儿积中选取在相同属性列上取值相等的元组,在结果中去掉重复的属性列,并去掉重复的行. 当R与S无相同属性时,R∞S = R×S 自然连接和等值连接两者是有区别的。 等值连接不要求相等属性值的属性名相同,而且不将重复属性去掉; 自然连接则要求属性值相等的属性名必须相同,即两关系只有在同名属性上才能进行自然连接,而且自然连接要将重复属性去掉。 除(Division) R与S的除运算得到一个新的关系P(X), P是R中满足下列条件的元组在X属性列上的投影: 关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组(R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集) 元组在X上分量值x的象集Yx包含S在Y上的投影 学生关系Student有学号Sno、学生姓名Same、系名Sdept、年龄Sage、性别Ssex等属性;课程关系C有课程号Cno、课程名Cname等属性;学生选课关系SC有学号Sno、课程号Cno、成绩Grade等属性。 定义关系模式及主码如下: Student(Sno,Sname,Sdept,Sage,Ssex) C(Cno,Cname) SC(Sno,Cno,Grade)。SC关系中的Sno、Cno又分别为外码。因为它们分别是Student、C关系中的主码。 例1 查询信息系(IS系)全体学生 σSdept=‘IS’(Student) 例2 查询年龄小于20岁的学生 σSage20(Student) 例3 查询年龄不小于20岁的男生 ?Sage≥20 ∧ Ssex=‘男’(Student) 1.求选修了1号或2号课程的学生号 2.求选修了1号而没有选2号课程的学生号 3.求同时选修了1号和2号课程的学生号 Student(Sno,Sname,Sdept,Sage,Ssex) C(Cno,Cname) SC(Sno,Cno,Grade)。 πSno(?Cno = 1∨ Cno = 2(SC)) π Sno(? Cno = 1 (SC))∪π Sno(? Cno = 2(SC)) 方案1: 方案2: Student(Sno,Sname,Sdept,Sage,Ssex) C(Cno,Cname) SC(Sno,Cno,Grade)。 πSno(?Cno = 1 (SC))-πSno(?Cno =2(SC)) Student(Sno,Sname,Sdept,Sage,Ssex) C(Cno,Cname) SC(Sno,Cno,Grade)。 πSno(?Cno =1 ? Cno = 2(SC)) πSno(?Cno =1 (SC))∩πSno(?Cno = 2(SC)) × √ 2007-3-27 * 第四讲 关系模型 ER模型向关系模型的转换 关系代数 关系模型的完整性约束 数据库系统的三级模式结构

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档