在某企业的工程项目管理系统的数据库中供应商关系Supp、项目关系Proj和零件关

资格题库2022-08-02  32

问题 在某企业的工程项目管理系统的数据库中供应商关系Supp、项目关系Proj和零件关系Part的E-R模型和关系模式如下:Supp(供应商号,供应商名,地址,电话)Proj(项目号,项目名,负责人,电话)Part(零件号,零件名)其中,每个供应商可以为多个项目供应多种零件,每个项目可由多个供应商供应多种零件。SP_P需要生成一个独立的关系模式,其联系类型为(  )给定关系模式SP_P(供应商号,项目号,零件号,数量)查询至少供应了3个项目(包含3项)的供应商,输出其供应商号和供应零件数量的总和,并按供应商号降序排列。SELECT供应商号,SUM(数量)FROM(  )GROUP BY供应商号(  )ORDER BY供应商号DESC;问题1选项A.*:*:*B.1:*:*C.1:1:*D.1:1:1问题2选项A.SuppB.ProjC.PartD.SP_P问题3选项A.HAVING COUNT(项目号)>2B.WHERE COUNT(项目号)>2C.HAVING COUNT(DISTINCT(项目号))>2D.WHERE COUNT(DISTINCT(项目号))>3

选项

答案 ADC

解析 由于1个供应商对应多个项目供应的多种零件,同时1个项目由多个供应商供应多种零件,所以三个实体都涉及到多。这个三元联系为:*:*:*。
后面2个空考查的是SQL语言,目前需要查询的是零件数量总和,很明显在题目的多个关系中只有SP_P有这个属性。所以查询只能FROMSP_P。接下来分析如何能把至少供应了3个项目的供应商找出来,此时需要写查询条件。查询条件Where与Having的区别要弄清楚,Where是针对单条记录的判断条件,而Having是针对分组之后的判断条件,此处应选Having,同时,由于考虑到项目号可能重复,所以需要加Distinct关键字以便去掉重复。
转载请注明原文地址:https://www.tihaiku.com/congyezige/2410398.html

最新回复(0)