sql 面试题

[复制链接]
查看11 | 回复5 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
应聘一个职位未果,其间被考了一个看似简单的题,但我没有找到好的大案.
表结构如下
MyTable:
日期
日产
1
3。3333
2
4。2222
3
1。5555
4
9。8888
5
………
要求用SQL语句生成如下查询
日期
日产
累计日产
1
3。3333
3。3333
2
4。2222
7。5555
3
1。5555
9。0000
4
9。8888
18。8888
5………
提示:2日累计日产=1日累计日产+2日累计日产
3日累计日产=2日累计日产+3日累计日产
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
ORACLE高效设计第一章就讲到这个问题了
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
select a.日期,a.日产sum(b.日产) from MyTable a
join MyTableb on a.日期>=b.日期
group by a.日期,a.日产
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
看来我得好好努力了
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
select 日期,日产,sum(日产) over (order by rownum) total
from table
/
是这个么?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
select outer.日期,outer.日产,(select sum(inner.日产)from MyTable inner where inner.日期<=outer.日期) 累计日产 from MyTable outer;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行