根据上述说明,由SQL定义的“职工”和“部门”的关系模式,以及统计各部门的人数C、工资总数Totals、平均工资Averages的D_S视图如下所示,请在空缺处填入正确的内容。 Create Table 部门 (部门号 Char(1) (a)

admin2009-05-15  35

问题 根据上述说明,由SQL定义的“职工”和“部门”的关系模式,以及统计各部门的人数C、工资总数Totals、平均工资Averages的D_S视图如下所示,请在空缺处填入正确的内容。
   Create Table 部门 (部门号    Char(1)  (a)  
                      部门名                     Char(16),
                      负责人代码                 Char(4),
                      任职时间                   DATE,
                       (b)   (职工号));
   Create Table 职工 (职工号  Char(4),
                  姓名    Char(8),
                  年龄    NUMDER(3),
                  月工资  NUMDER(4),
                  部门号  Char(1),
                  电话    Char(8),
                  办公室  Char(8),
                   (a)  (职工号),
                   (c)  (部门号),
                  CHECK(  (d)  ));
   Create View D_S(D,C,Totals,Averages)  As
                         (Select  部门号,  (e)  
                             from  职工
                               (f)
查询每个部门中月工资最高的“职工号”的SQL查询语句如下:
   Select 职工号 from 职工 E
   Where  月工资=(Select Max(月工资)
   from 职工 as M
   where M. 部门号=E. 部门号);
   (1)请用30字以内文字简要说明该查询语句对查询效率的影响。
   (2)对该查询语句进行修改,使它既可以完成相同功能,又可以提高查询效率。

选项

答案(1)对于外层的“职工”关系E中的每一个元组,都要对内层的整个“职工”关系M进行检索,因此查询效率不高。 (2)本题可以有两种解法: 解答一: 改正后的SQL语句使用了临时表: Select Max(月工资)as 最高工资,部门号Into Temp From 职工 Group by 部门号 Select 职工号 From 职工,Temp Where 月工资=最高工资 And 职工.部门号=Temp.部门号; 解答二: Select 职工号 Fro

解析
转载请注明原文地址:https://kaotiyun.com/show/7zTZ777K
0

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