oracle 循环取值 一天sql语句怎么实现? 30

表结构a_file(avarchar2(40),bdate,cnumber)数据abcA110/09/0110A110/09/0210A110/09/0310我想得到A1... 表结构 a_file (a varchar2(40), b date ,c number )
数据 a b c
A1 10/09/01 10
A1 10/09/02 10
A1 10/09/03 10

我想得到 A1 10/09/01 10
A1 10/09/02 20
A1 10/09/03 30
这样的数据用一条SQL怎么实现呢。得到数据的第个字段是 <=当前笔日期的SUM(C)的值,写了半天写不出来,求助啊,谢谢了
展开
 我来答
zjlarley
2012-10-27 · 超过10用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:26.7万
展开全部
楼上朋友的SQL正确,但是有点复杂了,利用sum和分析函数over连续求和直接出来,这样写更效率(针对大数据量效果明显哦)。
select t.a, t.b, sum(t.c) over(order by t.b) from a_file t
追问
我使用那个朋友的方式没有成功,因为我那个是很多个表的关联,不好表述,就简单的描述了一下,我试试您的看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tiny1103
2012-10-26 · TA获得超过510个赞
知道小有建树答主
回答量:775
采纳率:0%
帮助的人:620万
展开全部
SELECT t.a AS t_a, t.b AS t_date, sum(t1.sumQty)
FROM a_file t
LEFT JOIN (
SELECT t2.b,SUM(t2.c) AS sumQty FROM a_file t2 GROUP BY t2.b
) t1 ON t1.b<=t.B
WHERE 1=1
GROUP BY t.a,t.b
order BY t.b
追问
多谢,我试试去,我折腾一天了都没成功,哎。。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式