免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2018年上半年 数据库系统工程师 上午试卷 综合知识
  第39题      
  知识点:   SQL函数和过程
  关键词:   函数        章/节:   数据库标准语言—SQL       

 
给定教师关系 Teacher(T_no, T_name, Dept_name, Tel),其中属性T_no、T_name、Dept_name和Tel的含义分别为教师号、教师姓名、学院名和电话。用SQL创建一个“给定学院名求该学院的教师数”的函数如下:
Create function Dept_count(Dept_name varchar(20))
(39)
Begin
(40)
select count(*)into d_count
from Teacher
where Teacher.Dept_name= Dept_name
return d_count
end
 
 
  A.  returns integer
 
  B.  returns d_count integer
 
  C.  declare integer
 
  D.  declare d_count integer
 
 
 

 
  第40题    2018年上半年  
   42%
给定教师关系 Teacher(T_no, T_name, Dept_name, Tel),其中属性T_no、T_name、Dept_name和Tel的含义分别为教师号、教师姓名、..
 
   知识点讲解    
   · SQL函数和过程
 
       SQL函数和过程
        
        分解关系flat-books为4NF的实例
        假定我们想要这样一个函数:给定一个书名,返回其作者数,使用4NF模式(参见上图)。我们可以用下面这种方式定义这个函数:
        
        这个过程可以用在一个返回具有多于一个作者的所有书的名称的查询:
        
        函数对于特定的数据类型(比如图像和几何对象)来说特别有用。例如,用在地图数据库中的一个多边形数据类型可能有一个相关函数用于判断两个多边形是否重叠,一个图像数据类型可能有一个相关函数用于比较两幅图的相似性。函数可以用外部语言(比如C)来编写。一些数据库系统也支持返回关系(即元组的多重集合)的函数,尽管SQL-99并不支持这些函数。
        前面介绍的方法,可以看作与结构类型相关联的函数。它们的第一个参数self是隐含的,它被设置为调用这个方法的结构类型的值。因此,方法主体可以通过self.a来引用这个值的属性a。这些属性也可以被该方法更新。
        SQL-99也支持过程。author-count函数也可以写成一个过程:
        
        可以从一个SQL过程中或者从嵌入式SQL中使用call语句调用过程:
        
        SQL-99允许多个过程同名,只要同名的不同过程的参数个数不同。名称和参数个数用于标识一个过程。SQL-99也允许多个函数同名,只要这些同名的不同函数的参数个数不同,或者,对于那些有相同个数参数的函数,至少有一个参数的类型不同。
   题号导航      2018年上半年 数据库系统工程师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第39题    在手机中做本题