![](https://lstatic.shangxueba.com/jiandati/pc/images/pc_jdt_tittleico.png)
设有关系模式R (车间编号,零件编号,数量,仓库编号,仓库地址)。规定:每个车间每需要-种零件只有一-个数量,每种零件只存放在一个仓库里, 每个仓库只有-个地址。(1 )根据规定,写出R的函数依赖集和码。( 2 )判断R是否属于2NF ,如果不是说明理由,将R分解成2NF模式集。(3 )再分解成3NF模式集,并说明理由。
![](https://lstatic.shangxueba.com/jiandati/pc/images/jdt_panel_vip.png)
请回答下列问题:
1)找出关系模式R的候选键,关系模式R最高已经达到第几范式?说明理由。
2)如果R不属于3NF,请将R分解成3NF模式集。
A.若A→B,B→C,则A→CB.若Y⊆X⊆U,则X→Y。C.若A→B,A→C ,则A→BCD.若A→B,C⊆B,则A→C
【简答题】每个月份的发生额都比101科目多的科目 请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目。请注意:TestDB中有很多科目,都有1-12月份的发生额。 AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额。 数据库名:JcyAudit,数据集:Select * from TestDB 准备数据的sql代码: drop table if exists TestDB; create table TestDB( id int primary key auto_increment, AccID varchar(20), Occmonth date, DebitOccur bigint); insert into TestDB values (null,'101','1988-1-1',100), (null,'101','1988-2-1',110), (null,'101','1988-3-1',120), (null,'101','1988-4-1',100), (null,'101','1988-5-1',100), (null,'101','1988-6-1',100), (null,'101','1988-7-1',100), (null,'101','1988-8-1',100); --复制上面的数据,故意把第一个月份的发生额数字改小一点 insert into TestDB values (null,'102','1988-1-1',90), (null,'102','1988-2-1',110), (null,'102','1988-3-1',120), (null,'102','1988-4-1',100), (null,'102','1988-5-1',100), (null,'102','1988-6-1',100), (null,'102','1988-7-1',100), (null,'102','1988-8-1',100); --复制最上面的数据,故意把所有发生额数字改大一点 insert into TestDB values (null,'103','1988-1-1',150), (null,'103','1988-2-1',160), (null,'103','1988-3-1',180), (null,'103','1988-4-1',120), (null,'103','1988-5-1',120), (null,'103','1988-6-1',120), (null,'103','1988-7-1',120), (null,'103','1988-8-1',120); --复制最上面的数据,故意把所有发生额数字改大一点 insert into TestDB values (null,'104','1988-1-1',130), (null,'104','1988-2-1',130), (null,'104','1988-3-1',140), (null,'104','1988-4-1',150), (null,'104','1988-5-1',160), (null,'104','1988-6-1',170), (null,'104','1988-7-1',180), (null,'104','1988-8-1',140); --复制最上面的数据,故意把第二个月份的发生额数字改小一点 insert into TestDB values (null,'105','1988-1-1',100), (null,'105','1988-2-1',80), (null,'105','1988-3-1',120), (null,'105','1988-4-1',100), (null,'105','1988-5-1',100), (null,'105','1988-6-1',100), (null,'105','1988-7-1',100), (null,'105','1988-8-1',100);
【简答题】统计每年每月的信息 year month amount 1991 1 1.1 1991 2 1.2 1991 3 1.3 1991 4 1.4 1992 1 2.1 1992 2 2.2 1992 3 2.3 1992 4 2.4 查成这样一个结果: year m1 m2 m3 m4 1991 1.1 1.2 1.3 1.4 1992 2.1 2.2 2.3 2.4 准备sql语句: drop table if exists sales; create table sales( id int auto_increment primary key, year varchar(10), month varchar(10), amount float(2,1)); insert into sales values (null,'1991','1',1.1), (null,'1991','2',1.2), (null,'1991','3',1.3), (null,'1991','4',1.4), (null,'1992','1',2.1), (null,'1992','2',2.2), (null,'1992','3',2.3), (null,'1992','4',2.4);
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!