db테이블에 한 차량의 1년치 내용별 데이터가 들어있습니다.


차종,    날짜,          내용,     금액

마티즈, 2007-10-01, 주유비, 10000원

마티즈, 2007-10-02, 주유비,  5000원

마티즈, 2007-10-03, 정비비, 25000원

아반떼, 2007-10-03, 보험료, 30000원    
.
.
.

위와 같이 차량도 종류별로 있고.. 내용도 종류별로 있다. 크게보면 6가지로 구분된다.
이걸 아래처럼 만들 것이다.


 월 | 비용합계 |  주유비 | 정비비 |  ... |  기타  |  합계 |

1월          00원        00원       00원    ...     00원     000원

2월          00원        00원       00원    ...     00원     000원

3월          00원        00원       00원    ...     00원     000원     

'

'

'

12월        00원        00원       00원    ...     00원     000원

합계      000원       000원     000원    ...    000원   0000원


방법.

날짜 중에 월과 내용을 기준으로 Group by를 해주시면 월별 합계가 나온다.
마찬가지로 년과 내용을 기준으로 Group by를 사용해보시면 년별 값계가 나온다.


우선 날짜를 월별로 그룹화 하시려면 뒤에 일자를 잘라 주어야 한다.

char 형식으로 되어 있다면

Select Left(날짜,7) from 테이블 이런식으로 자르시면 된다.

그룹화 하시는 더 자세한 내용을 보시려면 http://sqler.pe.kr/sql2k/28.asp 링크를 참고해 주세요

결과적으로 아래와 같은 쿼리를 사용하여 차종, 월별, 내용 별로 합계를 구할 수 있다.
SELECT 차종, 날짜, 내용, SUM(금액) FROM 테이블 Group by 차종, LEFT(날짜,7),내용


Posted by leebaro
,