数据库能力测试I(题目源自于CSDN论坛)

来源:百度文库 编辑:神马文学网 时间:2024/04/25 21:06:16

数据库能力测试I(题目源自于CSDN论坛)

[日期:2005-07-08]来源:CSDN  作者:[字体:大 中 小]

[DB基础](10)

选答题, 从下列题目中任选题分值满10分的作答.

SYBASE

A.(5)软件公司的张工在备份数据库除了备份应用数据库本身以外, 还备份master数据库,为什么?

 

B.(5)SYBASE的VIEW创建有那些限制?

 

ORACLE

A.(5)解释归档和非归档模式之间的不同和它们各自的优缺点

 

B.(5) 兩個結果集互加及互減的函數

 

综合

A.(10)取一表前N筆記錄的各种數据庫的寫法... 至少写出三种写法.

 

[SQL常识](30)

A. (5)比较truncate和delete :

 

B. (5)比较union 和 union all区别,请举例说明 (要求写出结果集)

 

C. (5)比较EXISTS 与 IN (NOT IN)的用法, 请举例说明 (要求写出结果集)

 

D. (5)比较between 与 >  and  <的区别,请举例说明 (要求写出结果集)

 

E. (9)比较自然连接和外部连接以及笛卡尔积的用法,各请举例说明 (要求写出结果集)

 

[SQL综合应用](40)

使用的数据库不受限制,但要求在答案中写出所用的数据库类型.

下列题目要求用SQL本身实现(要求考虑到编码级优化)

最好就一句SQL, (得分率为100%)

如果不能用一句SQL实现可以用多句SQL实现,(得分率为 80%)

也可以用存储过程实现(得分率为70%).

除了写出相应的编码外,还要求答题者给出思路以及实现步骤的文字描述.

A.(6)求和运算

表结构如下:

     序号,总金额,金额1,部门

 记录:1            10     1

       2            10     1

       3            10     1

       4            10     2

       5            10     2

现想按部门对总金额进行求和运算

 结果为为:

    序号,总金额,金额1,部门

 记录:1    30      10     1

       2    30      10     1

       3    30      10     1

       4    20      10     2

       5    20      10     2

 

B.(6)字段最大值

有三个字段,T1, T2, T3,请问怎么返回一个字段,值是这三个字段的最大值?

要求:对题目的理解描述, 建立相应的测试数据, 写出SQL,得出SQL结果集

 

C.(6)重复行检索

请问如何把一个table中某列重复的行检索出来? (某一列或者多列的值重复)

要求:对题目的理解描述, 建立相应的测试数据, 写出SQL,得出SQL结果集

 

D.(8)需求理解

有一张表:S#(学号),C#(课程号),Grade(成绩)

请写出所学课程包含学号为001的学生所学课程的学生的学号。

要求:对题目的理解描述, 建立相应的测试数据, 写出SQL,得出SQL结果集

 

E.(14)外连接应用

有两张表b1,b2,其中b1表有一列为(id1 number(10)),b2有一列为(id2 number(10)).现在需要将id1,id2取出来,放在表b3里,b3为(b1id number(10),b2id number(10)),要将id1放入b1id,id2放入b2id.  另该两表没有任何内在联系. 

请问用sql语句该怎么实现。

表B1            表B2                  表B3

id1               id2                     b1id,  b2id

1                2                       1     2

2                3                       2     3

3                1                       3     1

4                6                       4     6

5                9                       5     9 

                 5                       null   5

                 8                       null   8

                 4                       null   4

 

------------------------------------------------

ABC客户分析法的说明:

(一)将客户按业绩大小顺序排列。

(二)将全部客户的进货金额予以累计。

(三)其累计的总金额在55%以内的客户称为A级客户。

  在55%——85%的客户称为B级客户。

  在85%—100%的客户称为C级客户。