【求助】一个貌似简单的SQL语句,折磨了我一下午,请高手指点,谢谢!(50分尽快结贴)
假设有数据表T1,包含3个字段TYPE(类型)、DATE(日期)和JE(金额),如下所示(T1表):
TYPE DATE JE
----------------------
A 200202 10
B 200203 20
B 200203 30
A 200204 40
B 200205 50
A 200206 60
想要通过GROUP BY TYPE, DATE分组后,产生3个字段SUM_JE、LJ_JE和BFB_LJ_JE,如下所示(T2表):
TYPE DATE SUM_JE LJ_JE BFB_LJ_JE
-----------------------------------------------
A 200202 10 10 10/170
A 200204 20 50 50/170
A 200206 60 110 110/170
B 200203 50 50 50/160
B 200206 60 110 110/160
其中,
SUM_JE是金额和,表示:当前TYPE的当前DATE组中,T1表中的数据和
如:T2的第4行(50)=T1的第2行(20)+T1的第3行(30)
LJ_JE是当年累计金额,表示:当前TYPE组中,T1.DATE小于等于当前DATE的数据和
如:T2的第2行(50)=T1的第1行(10)+T1的第4行(40)
BFB_LJ_JE表累计金额百分比,表示:当年累计金额(LJ_JE) / 当前TYPE组中LJ_JE之和
如:T2的第1行(10/170)= T2的LJ_JE字段(10) / T2的1、2、3行之和(10+50+110=170)
请问:如何用一个SELECT语句从T1生成T2?
想了好多办法都没成功,请高手帮个忙,先谢谢了!