有表sbxx,内容如下:sbh sbrq je
10001 20030104 1
10001 20030206 -343
10001 20030630 32
10001 .
.
10001 20031231 5523
10001 20040101 2
10002 20030201 434
.
.
10002 20031201 434 . .
. .怎样写sql语句,变为:sbh nianfen yiyue eryue sanyue siyue wuyue liuyue .......shieryue
10001 2003 1 0 0 0 0 32 5523
10001 2004 2 0 0 0 0 0 0..........0
10002 2003 0 0 0 0 ............................434
. .
. .
. .谢谢!
10001 20030104 1
10001 20030206 -343
10001 20030630 32
10001 .
.
10001 20031231 5523
10001 20040101 2
10002 20030201 434
.
.
10002 20031201 434 . .
. .怎样写sql语句,变为:sbh nianfen yiyue eryue sanyue siyue wuyue liuyue .......shieryue
10001 2003 1 0 0 0 0 32 5523
10001 2004 2 0 0 0 0 0 0..........0
10002 2003 0 0 0 0 ............................434
. .
. .
. .谢谢!
select sbh,nianfen,sum(yiyue),sum(eryue)..... from (
select sbh,substr(sbrq,1,4) nianfen,substr(sbrq,5,2) yiyue, 0 eryue,0 sanyue,0 siyue ...... 0 shieryue from sbxx where substr(yiyue,5,2) = '01'
union all
select sbh,substr(sbrq,1,4) nianfen,0 yiyue, substr(sbrq,5,2) eryue,0 sanyue,0 siyue ...... 0 shieryue from sbxx where substr(yiyue,5,2) = '02'
union all
......) t group by sbh,nianfen
大概就是这样吧
select sbh,nianfen,sum(yiyue),sum(eryue)..... from (
select sbh,substr(sbrq,1,4) nianfen,substr(sbrq,5,2) yiyue, 0 eryue,0 sanyue,0 siyue ...... 0 shieryue from sbxx where substr(sbrq,5,2) = '01'
union all
select sbh,substr(sbrq,1,4) nianfen,0 yiyue, substr(sbrq,5,2) eryue,0 sanyue,0 siyue ...... 0 shieryue from sbxx where substr(sbrq,5,2) = '02'
union all
......) t group by sbh,nianfen
大概就是这样吧