SQL Server经典面试题之一
来源:互联网 发布:淘宝店铺专卖非法词语 编辑:程序博客网 时间:2024/05/08 15:12
SQL Server经典面试题之一
朱二(2006.12 转载请注明作者)
问题说明:有三个表,项目表、合同表、付款表
一个项目可能会有签署多个合同,每个合同会分几次付款。
--下面是建立表的语句
create table 项目(项目编号 int,项目名称 varchar(50))
insert 项目
select 1, '项目1'
union
select 2, '项目2'
union
select 3, '项目3'
create table 合同(合同编号 int,项目编号 int,合同金额 numeric(7,3))
insert 合同
select 1,1,1000
union
select 2,1,1500
union
select 3,2,2000
create table 付款(付款编号 int,合同编号 int,付款金额 numeric(7,3))
insert 付款
select 1,1,100
union
select 2,2,200
union
select 3,2,800
问题(一):
设计一个查询,要求返回结果如下:
----------------------------------------------------------
项目编号 项目名称 项目所有合同的金额
----------- ------------------------ ---------------------
1 项目1 2500
2 项目2 2000
3 项目3 NULL
问题(二):
设计一个查询,要求返回结果如下:
--------------------------------------
项目编号 项目所有合同已付款金额
----------- --------------------------
1 1100
2 NULL
--------------------------------------
问题(三)
设计一个查询,要求返回结果如下:
项目编号 项目名称 项目所有合同已付款金额
----------- ----------------------------------------
1 项目1 1100
2 项目2 NULL
----------------------------------------------------
问题(四):
请您设计一个查询语句,检索的格式如下:
------------------------------------------------------------------------
项目编号 项目名称 项目所有合同的金额 项目所有合同已付款金额
------------------------------------------------------------------------
1 项目1 2500.000 1100.000
2 项目2 2000.000 NULL
------------------------------------------------------------------------
考核点:问题一、二、三考核连接、分组统计的综合运用
问题四考核连接、分组统计、子查询的综合运用
- SQL Server经典面试题之一
- SQL Server 行列转换--经典面试题
- C++经典面试题之一
- 经典SQL面试题
- 经典SQL面试题
- SQL经典面试题
- SQL经典面试题
- SQL经典面试题
- 经典SQL面试题
- 经典sql面试题
- 经典sql面试题
- SQL Server面试题
- SQL Server 面试题
- SQL Server 面试题
- SQL SERVER面试题
- sql server面试题
- sql server面试题
- SQL Server面试题
- 如何使程序创建的子窗口显示在任务栏上(强制)?
- Algorithms is new brand on programmers
- 正则表达式及应用
- 如何使用 .net 的TreeView控件
- 远离“电脑病”
- SQL Server经典面试题之一
- 我被“熟人”砍了!
- 用游标实现为数据库的每个用户表添加结构相同的触发器
- Exchange 单封邮件的恢复
- 2007年微软面临的五大挑战
- problem 1005
- 学习的法则摘录-毛向辉
- 使用Eclipse调试J2ME程序
- window对象execScript实现的级联下拉列表的核心代码