日期:2013-10-22  浏览次数:20413 次


[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        &nb