DB 쿼리문 하나 물어볼께요~ 답변주세요 0 4 1,855

by 하루살이 [2009.07.27 12:34:30]


날짜 데이터가

1988-01-23...... 이런식으로 1999-12-30 일까지 있고요 이필드는 A라고 하고

다음에는 날짜 필드옆에 숫자가 각각 들어있어요..이필드는 B라고 하면

월별로 숫자 합을 뽑을려면 쿼리문을 어떻게 해야 하나요..

질문이 좀 그렇긴해도.. 알아 보실꺼라 생각하고 올립니다 ~ ㅎ

감사요~

 

by 웅 [2009.07.27 14:04:47]
데이터가 문자타입일때
select substr(a,1,6), sum(b)
from 테이블
group by substr(a,1,6)

select to_char(a,'yyyymm'), sum(b)
from 테이블
group by to_char(a,'yyyymm')

by 손님 [2009.07.27 14:10:21]
select sum(target.b), target.aa
from (
SELECT to_char(TO_DATE('2000-06-16','YYYY-MM-DD'),'yyyymm')aa , '10' b FROM DUAL UNION ALL
SELECT to_char(TO_DATE('2000-06-16','YYYY-MM-DD'),'yyyymm')aa, '5' b FROM DUAL UNION ALL
SELECT to_char(TO_DATE('2001-06-16','YYYY-MM-DD'),'yyyymm')aa, '30' b FROM DUAL UNION ALL
SELECT to_char(TO_DATE('2001-08-16','YYYY-MM-DD'),'yyyymm')aa, '20' b FROM DUAL) target
group by target.aa ;
이게 맞나용?

by 하루살이 [2009.07.27 14:55:15]
웅님 감사합니다~
날짜 데이터가 문자 타입이고요..
님 하신대로 하니까 구해지네요..
근데 그 두 필드 말고 같이 뽑아야 되는 필드가 있는데요..
일련번호 식으로 된 필드가 두개 더 있습니다.
만약에 c라는 필드는 2 를
d라는 필드는 1 인 것을 뽑아서
월별 합계를 구하는 거였거든요..

웅님께서 올려주신대로 하고 다른 필드 2랑 1을 추가 하니까..에러가..

어떡해 해야하죠;;;

by 하루살이 [2009.07.27 15:05:40]
아 완전 해결했어요

댓글 감사드립니다~
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입