免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2021年上半年 数据库系统工程师 上午试卷 综合知识
  第45题      
  知识点:   分组查询   子查询与聚集函数
  章/节:   数据库标准语言—SQL       

 
某电影院某日电影入座情况如下表所示。为调整场次,要统计2021年2月21日到场人数总数大于100的电影,可满足要求的SQL语句是( )。
 
 
  A.  SELECT film,sum(attendance) FROM movie WHERE pdate='20210221'HAVING sumattendance)>100
 
  B.  SELECT film,sum(attendance)FROM movie WHERE pdate=‘20210221’AND attendance >100 GROUP BY film
 
  C.  SELECT filmum(attenedance)FROM movie WHERE pdate=‘20210221’GROUP BY film HAVING sum(attendance)> 100
 
  D.  SELECT film,sum(attendance)FROM movie WHERE pdate=*20210221 AND sum(attendance)>100 GROUP BY film
 
 
 

 
  第41题    2009年上半年  
   34%
某超市的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个基本关系如表1和表2所示。
  第42题    2016年上半年  
   66%
某企业部门关系模式Dept(部门号,部门名,负责人工号,任职时间),员工关系模式EMP(员工号,姓名,年龄,月薪资,部门号,电话..
  第40题    2014年上半年  
   37%
假定某企业根据2014年5月员工的出勤率、岗位、应扣款得出的工资表如下:
   知识点讲解    
   · 分组查询    · 子查询与聚集函数
 
       分组查询
               GROUP BY子句
               在WHERE子句后面加上GROUP BY子句可以对元组进行分组,保留字GROUP BY后面跟着一个分组属性列表。最简单的情况是FROM子句后面只有一个关系,根据分组属性对它的元组进行分组。SELECT子句中使用的聚集操作符仅用在每个分组上。
               该语句是将SC关系的元组重新组织,并进行分组使得不同学号的元组分别被组织在一起,最后求出各个学生的平均值输出。
               HAVING子句
               假如元组在分组前按照某种方式加上限制,使得不需要的分组为空,可以在GROUP BY子句后面跟一个HAVING子句即可。
               注意:当元组含有空值时,应该记住以下两点。
               (1)空值在任何聚集操作中被忽视。它对求和、求平均值和计数都没有影响。它也不能是某列的最大值或最小值。例如,COUNT(*)是某个关系中所有元组数目之和,但COUNT(A)却是A属性非空的元组个数之和。
               (2)NULL值又可以在分组属性中看作是一个一般的值。例如,SELECT A,AVG(B)FORM R中,当A的属性值为空时,就会统计A=NULL的所有元组中B的均值。
               根据题意“某工程至少用了三家供应商(包含三家)供应的零件”,应该按照工程号分组,而且应该加上条件供应商的数目。但是需要注意的是,一个工程项目可能用了同一个供应商的不同零件,因此,在统计供应商数的时候需要加上DISTINCT,以避免重复统计导致错误的结果。例如,按工程号Jno='J1'分组,其结果如下表所示。如果不加DISTINCT,统计的结果数为7;而加了DISTINCT,统计的结果数为5。
               
               按工程号Jno='J1'分组
 
       子查询与聚集函数
               子查询
               子查询也称嵌套查询。嵌套查询是指一个SELECT-FROM-WHERE查询块可以嵌入另一个查询块之中。在SQL中允许多重嵌套。
               聚集函数
               聚集函数是一个值的集合为输入,返回单个值的函数。SQL提供了5个预定义集函数:平均值avg、最小值min、最大值max、求和sum以及计数count。如下表所示。
               
               集函数的功能
               使用ANY和ALL谓词必须同时使用比较运算符,其含义及等价的转换关系如下表所示。用集函数实现子查询通常比直接用ALL或ANY查询效率要高。
               
               ANY、ALL谓词含义及等价的转换关系
               说明:方法2实际上是找出计算机系年龄最小的学生的年龄,只要其他系的学生年龄比这个年龄小,那么就应在结果集中。
   题号导航      2021年上半年 数据库系统工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第45题    在手机中做本题