안녕하세요..
하단의 4686 번 게시물의 질문으로 우욱님께서 이런 방법으로 하면될것 같다고 알려주신 쿼리입니다.
알려주신 쿼리로 현재 사용중입니다.
DECLARE @lastmonth DATETIME
;
SELECT @lastmonth = MAX( 일자 )
FROM tt
WHERE 제품코드 = '000001'
;
SELECT AVG( 금액 )
FROM tt
WHERE 제품코드 = '000001'
AND DATEADD( MONTH, DATEDIFF(MONTH, 0, @lastmonth ), 0 ) <= 일자
AND 일자 < DATEADD( MONTH, DATEDIFF(MONTH, 0, @lastmonth ) + 1, 0 )
한가지더 궁금해서 여쭤 볼려고 합니다.
위 쿼리는 한가지 제품에 대한 가장최근의 한달 평균값을 구하는 쿼리입니다.
예로 제품의
일자 제품코드 가격
2013-02-11 000001 500
201302-15 000001 700
이런데이터가 있다면 제품의 평균가인 600 원이 나옵니다.
이번에는 해당테이블의 전체 제품코드의 가장최근 한달 평균값을 구할려고 합니다.
제품코드만 넣지 않으면 될줄알았는데 아니더라구요
가장최근 한달은 현재인 8월달이 될수도 있고 2월달이 될수도 있습니다.
감사합니다.
수고하세요~! |