2道关于 SQLServer 数据库方面的题目:
2007-05-30 23:34
369 查看
2道关于 SQLServer 数据库方面的题目:
第一题目:
有如下表,分别记录了“张三”每天消费的情况。其中,消费类型只有3种:1 买香烟 2 加油 3 吃饭
-------------------------------------------------
时间 | 消费类型 | 消费金额 |
-------------------------------------------------
2006-1-1 | 1 | 10.00 |
-------------------------------------------------
2006-1-1 | 2 | 200.00 |
-------------------------------------------------
2006-1-1 | 1 | 12.00 |
-------------------------------------------------
2006-1-1 | 3 | 12.00 |
-------------------------------------------------
2006-1-2 | 1 | 11.00 |
-------------------------------------------------
2006-1-2 | 3 | 107.00 |
-------------------------------------------------
2006-1-3 | 1 | 17.00 |
-------------------------------------------------
2006-1-3 | 3 | 17.00 |
-------------------------------------------------
2006-1-4 | 1 | 10.00 |
-------------------------------------------------
.........
请从上表用 “一句组合查询” 查询出每日消费统计表,要求检索出的内容格式如下:
-------------------------------------------------------------------------
年 | 月 | 日 | 买香烟 | 加油 | 吃饭 |
-------------------------------------------------------------------------
2006 | 1 | 1 | 22.00 | 200.00 | 12.00 |
-------------------------------------------------------------------------
2006 | 1 | 2 | 11.00 | 0.00 | 107.00 |
-------------------------------------------------------------------------
2006 | 1 | 3 | 17.00 | 0.00 | 17.00 |
-------------------------------------------------------------------------
2006 | 1 | 4 | 10.00 | 0.00 | 0.00 |
-------------------------------------------------------------------------
为节省程序员创建元数据表的时间,请执行下列语句生成:
create table CostList (时间 datetime, 消费类型 int, 消费金额 money)
insert into CostList values ('2006-1-1', 1, 10)
insert into CostList values ('2006-1-1', 2, 200)
insert into CostList values ('2006-1-1', 1, 12)
insert into CostList values ('2006-1-1', 3, 12)
insert into CostList values ('2006-1-2', 1, 11)
insert into CostList values ('2006-1-2', 3, 107)
insert into CostList values ('2006-1-3', 1, 17)
insert into CostList values ('2006-1-3', 3, 17)
insert into CostList values ('2006-1-4', 1, 10)
GO
select 消费金额=isnull(sum(case 消费类型 when 3 then 消费金额 end) ,0) from CostList group by 时间
(请调试通过并结果正确后再回复答案,请注意语句的性能)
===================================================
第2题:
已知父子关系记录存在于一张表中:
__________________________________________
id | Parent_id | Name
------------------------------------------
1 | -1 | 张三
------------------------------------------
2 | 1 | 里斯
------------------------------------------
3 | 1 | 王武
------------------------------------------
4 | 2 | 赵六
------------------------------------------
5 | 3 | 牛七
------------------------------------------
.......
用一个存储过程,计算出某用户下级共有多少子记录(下级的下级...所有子级)
P_GetUsersScore @User_id bigint, @Score int output
AS
.....
.....
set @Score = xxxx
GO
注:级别层数可能会超过100层,注意性能。(请调试通过并结果正确后再回复答案)
=========================================================================
The End.
=========================================================================
.
第一题目:
有如下表,分别记录了“张三”每天消费的情况。其中,消费类型只有3种:1 买香烟 2 加油 3 吃饭
-------------------------------------------------
时间 | 消费类型 | 消费金额 |
-------------------------------------------------
2006-1-1 | 1 | 10.00 |
-------------------------------------------------
2006-1-1 | 2 | 200.00 |
-------------------------------------------------
2006-1-1 | 1 | 12.00 |
-------------------------------------------------
2006-1-1 | 3 | 12.00 |
-------------------------------------------------
2006-1-2 | 1 | 11.00 |
-------------------------------------------------
2006-1-2 | 3 | 107.00 |
-------------------------------------------------
2006-1-3 | 1 | 17.00 |
-------------------------------------------------
2006-1-3 | 3 | 17.00 |
-------------------------------------------------
2006-1-4 | 1 | 10.00 |
-------------------------------------------------
.........
请从上表用 “一句组合查询” 查询出每日消费统计表,要求检索出的内容格式如下:
-------------------------------------------------------------------------
年 | 月 | 日 | 买香烟 | 加油 | 吃饭 |
-------------------------------------------------------------------------
2006 | 1 | 1 | 22.00 | 200.00 | 12.00 |
-------------------------------------------------------------------------
2006 | 1 | 2 | 11.00 | 0.00 | 107.00 |
-------------------------------------------------------------------------
2006 | 1 | 3 | 17.00 | 0.00 | 17.00 |
-------------------------------------------------------------------------
2006 | 1 | 4 | 10.00 | 0.00 | 0.00 |
-------------------------------------------------------------------------
为节省程序员创建元数据表的时间,请执行下列语句生成:
create table CostList (时间 datetime, 消费类型 int, 消费金额 money)
insert into CostList values ('2006-1-1', 1, 10)
insert into CostList values ('2006-1-1', 2, 200)
insert into CostList values ('2006-1-1', 1, 12)
insert into CostList values ('2006-1-1', 3, 12)
insert into CostList values ('2006-1-2', 1, 11)
insert into CostList values ('2006-1-2', 3, 107)
insert into CostList values ('2006-1-3', 1, 17)
insert into CostList values ('2006-1-3', 3, 17)
insert into CostList values ('2006-1-4', 1, 10)
GO
select 消费金额=isnull(sum(case 消费类型 when 3 then 消费金额 end) ,0) from CostList group by 时间
(请调试通过并结果正确后再回复答案,请注意语句的性能)
===================================================
第2题:
已知父子关系记录存在于一张表中:
__________________________________________
id | Parent_id | Name
------------------------------------------
1 | -1 | 张三
------------------------------------------
2 | 1 | 里斯
------------------------------------------
3 | 1 | 王武
------------------------------------------
4 | 2 | 赵六
------------------------------------------
5 | 3 | 牛七
------------------------------------------
.......
用一个存储过程,计算出某用户下级共有多少子记录(下级的下级...所有子级)
P_GetUsersScore @User_id bigint, @Score int output
AS
.....
.....
set @Score = xxxx
GO
注:级别层数可能会超过100层,注意性能。(请调试通过并结果正确后再回复答案)
=========================================================================
The End.
=========================================================================
.
相关文章推荐
- sqlserver关于分页存储过程的优化【让数据库按我们的意思执行查询计划】
- sqlserver关于分页存储过程的优化【让数据库按我们的意思执行查询计划】
- 关于互联网业务在数据库方面的一些…
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于ADO数据库连接方面知识的总结
- 项目过程中遇到的关于数据库和内存方面的性能问题
- 请教关于数据库编程方面的问题
- 关于数据库方面的面试技巧:如何从建表展现自己能力
- 关于如果从SQLSERVER中获取 数据库信息 或者 表信息
- SQLserver关于教学楼中教室在某个时间段是否被占用的数据库设计
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于ADO数据库连接方面知识的总结
- 【寻求】关于C#映射动态生成类方面的资料(不是数据库映射生成类)
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于利用JDBC连接sqlserver中数据库的问题
- 关于利用JDBC连接sqlserver中数据库的问题