在关系代数运算中,关系S、SP和R如下表所示。(20),可以从S和SP获得 R。其对应的关系表达式为 (21) 。如下的SQL语句可以查询销售总量大于1000的部门名。 Select部门名From S Where 部门号 in (Selec

admin2008-01-15  26

问题 在关系代数运算中,关系S、SP和R如下表所示。(20),可以从S和SP获得 R。其对应的关系表达式为  (21)  。如下的SQL语句可以查询销售总量大于1000的部门名。
   Select部门名From S
   Where 部门号 in (Select 部门号 From SP Group by(22))。

选项 A、若先对S进行选择运算,再与SP进行自然连接运算
B、若先对S进行选择运算,再与SP进行自然连接运算,最后进行投影运算
C、若先对S和SP进行笛卡儿积运算,再对运算的结果进行投影运算
D、若先分别对S和SP进行投影运算,再对运算的结果进行笛卡儿积运算

答案B

解析 本题考查的是关系数据库的关系代数查询语言和SQL查询语言。
   关系R包含的是“家电部”销售的商品号和销售量,这些信息来源于关系S和SP,需要对这两个关系进行连接运算。
   对于答案A:结果中包含部门号,不正确。
   对于答案C、D:笛卡儿积会产生无意义的元组,不正确
   本题正确答案为B:通过选择运算取得“家电部”关系,与SP自然连接,投影用于去除部门号。
   试题(21)正确答案为C。
   对于答案A:结果中包含部门号,不正确。
   对于答案B:结果中包含的是“部门号”,“商品号”,“销售量”,不正确;
   对于答案D:使用笛卡儿积会产生无意义的元组,不正确。
   试题(22)正确答案为B。查询销售总量大于1000的部门名,需要根据部门号进行分组,在组内使用集函数sum统计每个部门的销售总量。对分组进行选择使用having短语,不能使用where子句,后者作用于整个表或视图。
转载请注明原文地址:https://kaotiyun.com/show/LvXZ777K
0

相关试题推荐
最新回复(0)