SELECT
'4' ORD, substr(a.acdate,0,7) ACDATE, '' REMARKS,
'' GEORECODE,
'누 계' NAME,
A.ACCODE,
B.CDNAME,
(select SUM(dramt) FROM ACCOUNT.ACSLPLNT
wHERE ACCODE BETWEEN 'A230500' AND 'A230500'
AND ACDATE BETWEEN '20070000' AND
(case substr(c.acdate,0,7) when '200701' then '20070131' <===요부분
when '200702' then '20070231'
when '200703' then '20070331'
when '200704' then '20070431'
when '200705' then '20070531'
when '200706' then '20070631'
when '200707' then '20070731'
when '200708' then '20070831'
when '200709' then '20070931'
when '200710' then '20071031'
when '200711' then '20071131'
when '200712' then '20071231'
end)
) DRAMT,
FROM ACCOUNT.ACSLPLNT A
WHERE A.ACDATE BETWEEN '20070101' AND '20071231'
AND A.ACCODE BETWEEN 'A230500' AND 'A230500'
AND A.STATS = '5'
GROUP BY substr(a.acdate,0,7), A.ACCODE, B.CDNAME
회계의 누계를 내는 쿼리입니다.
위쿼리에서 <==요부분 이라고 명시되있는 조건절에
1월이면 between '20070000' and '20070131'
2월이면 between '20070000' and '20070231'
이런식으로 between두번째 자리에 값을 acdate의 달로 바꾸고 싶습니다.
현재 나오는 내용은 이렇게 나옵니다
아래와같이 DRAMT부분이 동일한값이 나와서 문제입니다.
4 200703 누 계 A230500 토지 102468779000
4 200704 누 계 A230500 토지 102468779000
4 200705 누 계 A230500 토지 102468779000
4 200712 누 계 A230500 토지 102468779000
4 200711 누 계 A230500 토지 102468779000
이거가지고 지금 고생이 이만저만이아닙니다
고수님들의 조언부탁드립니다......
설명력이 부족하여 이말저말 덧붙인거같네요 궁금한사항있으면 댓글달아주셍
부탁드립니다...!!!!!!
누계 너 가만안두겠어..ㅠㅠ
|