회원별로 연간 주문금액 합계를 구하고 싶습니다.
본문
관리자모드 - 쇼핑몰현황/기타 - 매출현황 에있는 연간 매출은 모든 금액 총합계가 나오더라고요.
각 회원별로 연간 구매한 금액의 합계를 구해서 일정 금액 이상이면 등업을 할려고 합니다.
그럴려면 회원별로 구해야하는데 방법좀 알려주세요.
답변 1
일정금액이상에 구매한 회원들을 금액에따른 등급을 나눈다는것은 단순한 작업은아닙니다.
일단
질문에서 언급하신
"관리자모드 - 쇼핑몰현황/기타 - 매출현황 에있는 연간 매출은 모든 금액 총합계가 나오더라고요"
이부분의 쿼리 기준으로 답변을 드리자면,
회원별로가 아니고 말씀하신대로 모든금액 총합계입니다.
그럼 회원별로 하기위해선 회원별로 그룹으로 묶어주며, 그 금액들을 합산해주는 쿼리가 필요하죠.
대략 이런식의 쿼리를 구현합니다. ( 예를 든것이니 그대로 사용시 원하는 결과값을 못얻을수있습니다)
select
mb_id,
od_id,
SUBSTRING(od_time,1,4) as od_date,
sum(od_send_cost),
od_settle_case,
sum(od_receipt_price),
sum(od_receipt_point),
sum(od_cart_price),
sum(od_cancel_price),
sum(od_misu),
sum(od_cart_price + od_send_cost + od_send_cost2) as orderprice,
sum(od_cart_coupon + od_coupon + od_send_coupon) as couponprice
from g5_shop_order
where SUBSTRING(od_time,1,4) between '2015' and '2016'
group by mb_id
order by od_time desc
그럼 여기서 회원별로 대략 년간 구매한 금액이 나오겠죠.
이것을 금액별로 등급을 세팅해주는 프로세스를 추가하고.
이프로세스는 자동으로 실행되도록해야합니다.
스케줄러나 크론 등으로 일정시간( 보통 새벽)에 매일매일 구동시켜 등급을 세팅해줍니다..