|
@@ -1,4 +1,596 @@
|
|
|
|
|
|
|
|
|
|
+-- 시간대별
|
|
|
|
|
+-- INSERT INTO TB_STAT_ORD_TIME
|
|
|
|
|
+WITH TAB AS (
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ A.ORD_NO
|
|
|
|
|
+ , B.ORD_DTL_NO
|
|
|
|
|
+ , B.ORD_QTY
|
|
|
|
|
+ , B.CNCL_RTN_QTY
|
|
|
|
|
+ , B.ORD_AMT
|
|
|
|
|
+ , B.CNCL_RTN_AMT
|
|
|
|
|
+ , B.ORD_DTL_STAT
|
|
|
|
|
+ , B.EXTMALL_ID
|
|
|
|
|
+ , A.PAY_DT
|
|
|
|
|
+ , A.FRONT_GB
|
|
|
|
|
+ , C.ITEMKIND_CD
|
|
|
|
|
+ , C.BRAND_CD
|
|
|
|
|
+ , C.GOODS_CD
|
|
|
|
|
+ , A.CUST_NO
|
|
|
|
|
+ , B.SHOT_DELV_YN
|
|
|
|
|
+ , CPN1_DC_AMT
|
|
|
|
|
+ , RANK() OVER (PARTITION BY B.ORD_DTL_NO ORDER BY B.ORD_DTL_HST_SQ) AS RNK
|
|
|
|
|
+ FROM TB_ORDER A, TB_ORDER_DETAIL_HST B, TB_GOODS C, TB_CUSTOMER D
|
|
|
|
|
+ WHERE A.ORD_NO = B.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = C.GOODS_CD
|
|
|
|
|
+ AND A.CUST_NO = D.CUST_NO
|
|
|
|
|
+ AND A.PAY_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND A.PAY_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ AND B.ORD_EXCH_GB = 'O'
|
|
|
|
|
+ AND B.ORD_DTL_STAT = 'G013_20' -- 결제완료
|
|
|
|
|
+ ) A
|
|
|
|
|
+ WHERE RNK = 1
|
|
|
|
|
+)
|
|
|
|
|
+-- 매출
|
|
|
|
|
+, TAB_ORD AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , SUM(ORD_AMT + CPN1_DC_AMT + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = A.ORD_DTL_NO)) AS VAL
|
|
|
|
|
+ , '1' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+-- 취소반품액
|
|
|
|
|
+, TAB_CNCL AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , SUM((C.CURR_PRICE + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = C.ORD_DTL_NO)) * B.CHG_QTY) AS VAL
|
|
|
|
|
+ , '2' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL B, TB_ORDER_DETAIL C, TB_ORDER D, TB_GOODS E
|
|
|
|
|
+ WHERE B.ORD_DTL_NO = C.ORD_DTL_NO
|
|
|
|
|
+ AND C.ORD_NO = D.ORD_NO
|
|
|
|
|
+ AND C.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND CHG_STAT IN ('G685_18','G685_60') -- 결제후취소,반품완료
|
|
|
|
|
+ AND B.COMPLETE_DT >= DATE_FORMAT('20200701', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND B.COMPLETE_DT <= DATE_FORMAT('20200701235959', '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+-- 주문수
|
|
|
|
|
+, TAB_ORD_CNT AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , SUM(VAL) AS VAL
|
|
|
|
|
+ , '3' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , 1 AS VAL
|
|
|
|
|
+ , ORD_NO
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ GROUP BY TERM, ORD_NO, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ ) A
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+-- 판매수
|
|
|
|
|
+, TAB_SELL_QTY AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , SUM(VAL) AS VAL
|
|
|
|
|
+ , '4' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , SUM(ORD_QTY) AS VAL
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(A.REG_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , SUM(CHG_QTY) * -1 AS VAL
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL A, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E
|
|
|
|
|
+ WHERE A.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
+ AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND CHG_STAT = 'G685_10' -- 취소접수
|
|
|
|
|
+ AND A.REG_DT >= DATE_FORMAT('20200701', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND A.REG_DT <= DATE_FORMAT('20200701235959', '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ ) A
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+-- 취소반품갯수
|
|
|
|
|
+, TAB_CNCL_QTY AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , SUM(CHG_QTY) AS VAL
|
|
|
|
|
+ , '5' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL A, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E
|
|
|
|
|
+ WHERE A.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
+ AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND CHG_STAT IN ('G685_18','G685_60') -- 결제후취소,반품완료
|
|
|
|
|
+ AND COMPLETE_DT >= DATE_FORMAT('20200701', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND COMPLETE_DT <= DATE_FORMAT('20200701235959', '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+-- 주문자수(비회원은 주문당 1명)
|
|
|
|
|
+, TAB_ORD_CUST AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , SUM(VAL) AS VAL
|
|
|
|
|
+ , '6' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , 1 AS VAL
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ WHERE CUST_NO > 0
|
|
|
|
|
+ GROUP BY TERM, CUST_NO, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , 1 AS VAL
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ WHERE CUST_NO = 0 -- 비회원
|
|
|
|
|
+ GROUP BY TERM, ORD_NO, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ ) A
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+-- 객단가
|
|
|
|
|
+, TAB_CUST_PRICE AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , FLOOR(SUM(VAL) / SUM(ORD_CNT)) AS VAL
|
|
|
|
|
+ , '7' AS GBN
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d %H') AS TERM
|
|
|
|
|
+ , SUM(ORD_AMT + CPN1_DC_AMT + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = A.ORD_DTL_NO)) AS VAL
|
|
|
|
|
+ , 1 AS ORD_CNT
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, ORD_NO, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ ) A
|
|
|
|
|
+ GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+)
|
|
|
|
|
+SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ , ORD_AMT
|
|
|
|
|
+ , CNCL_AMT, ORD_CNT, SELL_QTY, CNCL_QTY
|
|
|
|
|
+ , ORD_CUST, CUST_PRICE
|
|
|
|
|
+ , NOW()
|
|
|
|
|
+FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '1' THEN VAL ELSE 0 END) AS ORD_AMT
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '2' THEN VAL ELSE 0 END) AS CNCL_AMT
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '3' THEN VAL ELSE 0 END) AS ORD_CNT
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '4' THEN VAL ELSE 0 END) AS SELL_QTY
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '5' THEN VAL ELSE 0 END) AS CNCL_QTY
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '6' THEN VAL ELSE 0 END) AS ORD_CUST
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '7' THEN VAL ELSE 0 END) AS CUST_PRICE
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_ORD
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CNCL
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_ORD_CNT
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_SELL_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CNCL_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_ORD_CUST
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CUST_PRICE
|
|
|
|
|
+ ) A
|
|
|
|
|
+GROUP BY TERM, FRONT_GB, EXTMALL_ID, BRAND_CD, ITEMKIND_CD, SHOT_DELV_YN
|
|
|
|
|
+) X
|
|
|
|
|
+;
|
|
|
|
|
+
|
|
|
|
|
+-- INSERT INTO TB_STAT_ORD_DAY
|
|
|
|
|
+WITH TAB AS (
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT A.ORD_NO
|
|
|
|
|
+ , B.ORD_DTL_NO
|
|
|
|
|
+ , B.ORD_QTY
|
|
|
|
|
+ , B.CNCL_RTN_QTY
|
|
|
|
|
+ , B.ORD_AMT
|
|
|
|
|
+ , B.CNCL_RTN_AMT
|
|
|
|
|
+ , B.ORD_DTL_STAT
|
|
|
|
|
+ , B.CPN1_DC_AMT
|
|
|
|
|
+ , B.GOODS_CPN_DC_AMT
|
|
|
|
|
+ , B.TMTB1_DC_AMT
|
|
|
|
|
+ , B.TMTB2_DC_AMT
|
|
|
|
|
+ , B.CART_CPN_DC_AMT
|
|
|
|
|
+ , B.SAVE_PNT_AMT
|
|
|
|
|
+ , IFNULL(B.AF_LINK_CD, 'AF999') AS AF_LINK_CD
|
|
|
|
|
+ , B.EXTMALL_ID
|
|
|
|
|
+ , A.PAY_DT
|
|
|
|
|
+ , A.FRONT_GB
|
|
|
|
|
+ , C.ITEMKIND_CD
|
|
|
|
|
+ , C.BRAND_CD
|
|
|
|
|
+ , C.SUPPLY_COMP_CD
|
|
|
|
|
+ , C.GOODS_CD
|
|
|
|
|
+ , B.FORMAL_GB
|
|
|
|
|
+ , CASE WHEN C.DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END AS DISTRIBUTION_GB
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(E.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') +
|
|
|
|
|
+ 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') +
|
|
|
|
|
+ 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') +
|
|
|
|
|
+ 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') +
|
|
|
|
|
+ 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , E.CUST_NO
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ , B.PNT_DC_AMT
|
|
|
|
|
+ , B.PRE_PNT_DC_AMT
|
|
|
|
|
+ , RANK() OVER (PARTITION BY B.ORD_DTL_NO ORDER BY B.ORD_DTL_HST_SQ) AS RNK
|
|
|
|
|
+ FROM TB_ORDER A,
|
|
|
|
|
+ TB_ORDER_DETAIL_HST B,
|
|
|
|
|
+ TB_GOODS C,
|
|
|
|
|
+ TB_CUSTOMER E
|
|
|
|
|
+ WHERE A.ORD_NO = B.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = C.GOODS_CD
|
|
|
|
|
+ AND A.CUST_NO = E.CUST_NO
|
|
|
|
|
+ AND A.PAY_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND A.PAY_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ AND B.ORD_EXCH_GB = 'O'
|
|
|
|
|
+ AND B.ORD_DTL_STAT = 'G013_20' -- 주문접수,입금대기,입금전취소 제외
|
|
|
|
|
+ ) A
|
|
|
|
|
+ WHERE RNK = 1
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 판매수
|
|
|
|
|
+ , TAB_SELL_QTY AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(ORD_QTY) AS VAL
|
|
|
|
|
+ , '1' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 매출
|
|
|
|
|
+ , TAB_ORD AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(ORD_AMT + CPN1_DC_AMT + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = A.ORD_DTL_NO)) AS VAL
|
|
|
|
|
+ , '2' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 즉시/상품쿠폰
|
|
|
|
|
+ , TAB_GOODS_CPN AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(CPN1_DC_AMT + GOODS_CPN_DC_AMT) AS VAL
|
|
|
|
|
+ , '3' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 다다익선
|
|
|
|
|
+ , TAB_TMTB AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(TMTB1_DC_AMT + TMTB2_DC_AMT) AS VAL
|
|
|
|
|
+ , '4' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 장바구니
|
|
|
|
|
+ , TAB_CART_CPN AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(CART_CPN_DC_AMT) AS VAL
|
|
|
|
|
+ , '5' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 취소갯수
|
|
|
|
|
+ , TAB_CNCL_QTY AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(CHG_QTY) AS VAL
|
|
|
|
|
+ , '6' AS GBN
|
|
|
|
|
+ , E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, IFNULL(B.AF_LINK_CD, 'AF999') AS AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL A, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E, TB_CUSTOMER G
|
|
|
|
|
+ WHERE A.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
+ AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND C.CUST_NO = G.CUST_NO
|
|
|
|
|
+ AND CHG_STAT = 'G685_18' -- 결제후취소
|
|
|
|
|
+ AND COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, B.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 반품갯수
|
|
|
|
|
+ , TAB_RTN_QTY AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(CHG_QTY) AS VAL
|
|
|
|
|
+ , '7' AS GBN
|
|
|
|
|
+ , E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, IFNULL(B.AF_LINK_CD, 'AF999') AS AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL A, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E, TB_CUSTOMER G
|
|
|
|
|
+ WHERE A.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
+ AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND C.CUST_NO = G.CUST_NO
|
|
|
|
|
+ AND CHG_STAT = 'G685_60' -- 반품완료
|
|
|
|
|
+ AND COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, B.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 취소액
|
|
|
|
|
+ , TAB_CNCL_AMT AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM((C.CURR_PRICE + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = C.ORD_DTL_NO)) * B.CHG_QTY) AS VAL
|
|
|
|
|
+ , '8' AS GBN
|
|
|
|
|
+ , E.GOODS_CD, C.FORMAL_GB, D.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, IFNULL(C.AF_LINK_CD, 'AF999') AS AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL B, TB_ORDER_DETAIL C, TB_ORDER D, TB_GOODS E, TB_CUSTOMER G
|
|
|
|
|
+ WHERE B.ORD_DTL_NO = C.ORD_DTL_NO
|
|
|
|
|
+ AND C.ORD_NO = D.ORD_NO
|
|
|
|
|
+ AND C.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND D.CUST_NO = G.CUST_NO
|
|
|
|
|
+ AND CHG_STAT = 'G685_18' -- 결제후취소
|
|
|
|
|
+ AND B.COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND B.COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, E.GOODS_CD, C.FORMAL_GB, D.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, C.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 반품액
|
|
|
|
|
+ , TAB_RTN_AMT AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM((C.CURR_PRICE + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = C.ORD_DTL_NO)) * B.CHG_QTY) AS VAL
|
|
|
|
|
+ , '9' AS GBN
|
|
|
|
|
+ , E.GOODS_CD, C.FORMAL_GB, D.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, IFNULL(C.AF_LINK_CD, 'AF999') AS AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL B, TB_ORDER_DETAIL C, TB_ORDER D, TB_GOODS E, TB_CUSTOMER G
|
|
|
|
|
+ WHERE B.ORD_DTL_NO = C.ORD_DTL_NO
|
|
|
|
|
+ AND C.ORD_NO = D.ORD_NO
|
|
|
|
|
+ AND C.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND D.CUST_NO = G.CUST_NO
|
|
|
|
|
+ AND CHG_STAT = 'G685_60' -- 반품완료
|
|
|
|
|
+ AND B.COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND B.COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, E.GOODS_CD, C.FORMAL_GB, D.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, C.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 지급포인트
|
|
|
|
|
+ , TAB_SAVE_PNT AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(SAVE_PNT_AMT) AS VAL
|
|
|
|
|
+ , '10' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 교환갯수
|
|
|
|
|
+ , TAB_CHG_QTY AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(CHG_QTY) AS VAL
|
|
|
|
|
+ , '11' AS GBN
|
|
|
|
|
+ , E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, IFNULL(B.AF_LINK_CD, 'AF999') AS AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL A, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E, TB_CUSTOMER G
|
|
|
|
|
+ WHERE A.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
+ AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND C.CUST_NO = G.CUST_NO
|
|
|
|
|
+ AND CHG_STAT = 'G685_40' -- 교환완료
|
|
|
|
|
+ AND COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, B.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 교환배송비
|
|
|
|
|
+ , TAB_CHG_DELV_FEE AS (
|
|
|
|
|
+ SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(A.DELV_FEE) AS VAL
|
|
|
|
|
+ , '12' AS GBN
|
|
|
|
|
+ , E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, IFNULL(B.AF_LINK_CD, 'AF999') AS AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
+ , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
+ , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
+ WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
+ ELSE 'X' END AS AGE
|
|
|
|
|
+ , SHOT_DELV_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT A.ORD_CHG_SQ
|
|
|
|
|
+ , A.ORD_DTL_NO
|
|
|
|
|
+ , CASE WHEN A.RNK = 1 THEN DELV_FEE ELSE 0 END AS DELV_FEE
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT OC.ORD_CHG_SQ
|
|
|
|
|
+ , OC.ORD_DTL_NO
|
|
|
|
|
+ , DF.DELV_FEE
|
|
|
|
|
+ , RANK() OVER (PARTITION BY OC.ORD_CHG_SQ, DF.DELV_FEE_CD ORDER BY OC.ORD_DTL_NO) AS RNK
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL OC
|
|
|
|
|
+ LEFT OUTER JOIN TB_DELIVERY_FEE DF
|
|
|
|
|
+ ON DF.ORD_CHG_SQ = OC.ORD_CHG_SQ AND DF.DELV_FEE_GB = 'G018_30'
|
|
|
|
|
+ WHERE OC.CHG_STAT = 'G685_40' -- 교환완료
|
|
|
|
|
+ AND OC.COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND OC.COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ ) A
|
|
|
|
|
+ ) A, TB_ORDER_CHANGE_DETAIL A1, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E, TB_CUSTOMER G
|
|
|
|
|
+ WHERE A.ORD_CHG_SQ = A1.ORD_CHG_SQ
|
|
|
|
|
+ AND A.ORD_DTL_NO = A1.ORD_DTL_NO
|
|
|
|
|
+ AND A1.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
+ AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
+ AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
+ AND C.CUST_NO = G.CUST_NO
|
|
|
|
|
+ AND A1.CHG_STAT = 'G685_40' -- 교환완료
|
|
|
|
|
+ AND A1.COMPLETE_DT >= DATE_FORMAT('20210610', '%Y%m%d') -- 시작일변수
|
|
|
|
|
+ AND A1.COMPLETE_DT <= DATE_FORMAT(CONCAT('20210610', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
+ GROUP BY TERM, E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, B.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 구매자수(비회원은 주문당 1명)
|
|
|
|
|
+ , TAB_ORD_CUST AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , SUM(VAL) AS VAL
|
|
|
|
|
+ , '13' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , 1 AS VAL
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ WHERE CUST_NO > 0
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , 1 AS VAL
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB
|
|
|
|
|
+ WHERE CUST_NO = 0 -- 비회원
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ ) A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ -- 사용포인트
|
|
|
|
|
+ , TAB_USE_PNT AS (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
+ , SUM(PNT_DC_AMT + PRE_PNT_DC_AMT) AS VAL
|
|
|
|
|
+ , '14' AS GBN
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ FROM TAB A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ , ORD_AMT - (GOODS_CPN_AMT + TMTB_AMT + CART_CPN_AMT + USE_PNT_AMT) AS REAL_ORD_AMT
|
|
|
|
|
+ , SELL_QTY, ORD_AMT, GOODS_CPN_AMT, TMTB_AMT, CNCL_QTY, RTN_QTY, CNCL_AMT, RTN_AMT, SAVE_PNT_AMT
|
|
|
|
|
+ , CHG_QTY, CHG_DELV_FEE, ORD_CUST, USE_PNT_AMT
|
|
|
|
|
+ , NOW()
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT
|
|
|
|
|
+ TERM
|
|
|
|
|
+ , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '1' THEN VAL ELSE 0 END) AS SELL_QTY -- 판매수
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '2' THEN VAL ELSE 0 END) AS ORD_AMT -- 매출액(판매금액)
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '3' THEN VAL ELSE 0 END) AS GOODS_CPN_AMT -- 즉시+상품쿠폰금액
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '4' THEN VAL ELSE 0 END) AS TMTB_AMT -- 다다익선금액
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '5' THEN VAL ELSE 0 END) AS CART_CPN_AMT -- 장바구니쿠폰금액
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '6' THEN VAL ELSE 0 END) AS CNCL_QTY -- 취소수량
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '7' THEN VAL ELSE 0 END) AS RTN_QTY -- 반품수량
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '8' THEN VAL ELSE 0 END) AS CNCL_AMT -- 취소금액
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '9' THEN VAL ELSE 0 END) AS RTN_AMT -- 반품금액
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '10' THEN VAL ELSE 0 END) AS SAVE_PNT_AMT -- 지금포인트
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '11' THEN VAL ELSE 0 END) AS CHG_QTY -- 교환수량
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '12' THEN VAL ELSE 0 END) AS CHG_DELV_FEE -- 교환배송비
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '13' THEN VAL ELSE 0 END) AS ORD_CUST -- 구매자수
|
|
|
|
|
+ , SUM(CASE WHEN GBN = '14' THEN VAL ELSE 0 END) AS USE_PNT_AMT -- 사용포인트
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_SELL_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_ORD
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_GOODS_CPN
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_TMTB
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CART_CPN
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CNCL_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_RTN_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CNCL_AMT
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_RTN_AMT
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_SAVE_PNT
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CHG_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_CHG_DELV_FEE
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_ORD_CUST
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM TAB_USE_PNT
|
|
|
|
|
+ ) A
|
|
|
|
|
+ GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE, SHOT_DELV_YN
|
|
|
|
|
+ ) X
|
|
|
|
|
+;
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
-- INSERT INTO TB_STAT_ORD_DAY
|
|
-- INSERT INTO TB_STAT_ORD_DAY
|
|
|
WITH TAB AS (
|
|
WITH TAB AS (
|
|
|
SELECT
|
|
SELECT
|
|
@@ -19,6 +611,7 @@
|
|
|
, C.SUPPLY_COMP_CD
|
|
, C.SUPPLY_COMP_CD
|
|
|
, C.GOODS_CD
|
|
, C.GOODS_CD
|
|
|
, CASE WHEN C.DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END AS DISTRIBUTION_GB
|
|
, CASE WHEN C.DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END AS DISTRIBUTION_GB
|
|
|
|
|
+ , A.CUST_NO
|
|
|
FROM TB_ORDER A, TB_ORDER_DETAIL B, TB_GOODS C, TB_AF_LINK D
|
|
FROM TB_ORDER A, TB_ORDER_DETAIL B, TB_GOODS C, TB_AF_LINK D
|
|
|
WHERE A.ORD_NO = B.ORD_NO
|
|
WHERE A.ORD_NO = B.ORD_NO
|
|
|
AND B.GOODS_CD = C.GOODS_CD
|
|
AND B.GOODS_CD = C.GOODS_CD
|
|
@@ -184,214 +777,4 @@
|
|
|
) A
|
|
) A
|
|
|
GROUP BY TERM, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
GROUP BY TERM, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
) X
|
|
) X
|
|
|
-;
|
|
|
|
|
-
|
|
|
|
|
-SELECT COUNT(1)
|
|
|
|
|
-FROM TB_STAT_ORD_DAY
|
|
|
|
|
-;
|
|
|
|
|
-38510470
|
|
|
|
|
-
|
|
|
|
|
-SELECT *
|
|
|
|
|
-FROM TB_STAT_ORD_DAY
|
|
|
|
|
-;
|
|
|
|
|
-
|
|
|
|
|
-SELECT * FROM TB_COMMON_CODE WHERE CD_GB = 'G065';
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-WITH TAB AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- A.ORD_NO
|
|
|
|
|
- , B.ORD_DTL_NO
|
|
|
|
|
- , B.ORD_QTY
|
|
|
|
|
- , B.CNCL_RTN_QTY
|
|
|
|
|
- , B.ORD_AMT
|
|
|
|
|
- , B.CNCL_RTN_AMT
|
|
|
|
|
- , B.ORD_DTL_STAT
|
|
|
|
|
- , B.CPN1_DC_AMT
|
|
|
|
|
- , B.GOODS_CPN_DC_AMT
|
|
|
|
|
- , B.TMTB1_DC_AMT
|
|
|
|
|
- , B.TMTB2_DC_AMT
|
|
|
|
|
- , B.CART_CPN_DC_AMT
|
|
|
|
|
- , B.SAVE_PNT_AMT
|
|
|
|
|
- , B.AF_LINK_CD
|
|
|
|
|
- , D.AF_CHANNEL
|
|
|
|
|
- , B.EXTMALL_ID
|
|
|
|
|
- , A.PAY_DT
|
|
|
|
|
- , A.FRONT_GB
|
|
|
|
|
- , C.ITEMKIND_CD
|
|
|
|
|
- , C.BRAND_CD
|
|
|
|
|
- , C.SUPPLY_COMP_CD
|
|
|
|
|
- , C.GOODS_CD
|
|
|
|
|
- , B.FORMAL_GB
|
|
|
|
|
- , CASE WHEN C.DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END AS DISTRIBUTION_GB
|
|
|
|
|
- , IFNULL(FN_DEC_AES(E.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
- , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(E.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
- ELSE 'X' END AS AGE
|
|
|
|
|
- FROM TB_ORDER A, TB_ORDER_DETAIL B, TB_GOODS C, TB_AF_LINK D, TB_CUSTOMER E
|
|
|
|
|
- WHERE A.ORD_NO = B.ORD_NO
|
|
|
|
|
- AND B.GOODS_CD = C.GOODS_CD
|
|
|
|
|
- AND B.AF_LINK_CD = D.AF_LINK_CD
|
|
|
|
|
- AND A.CUST_NO = E.CUST_NO
|
|
|
|
|
- AND A.PAY_DT >= DATE_FORMAT('20200701', '%Y%m%d') -- 시작일변수
|
|
|
|
|
- AND A.PAY_DT <= DATE_FORMAT(CONCAT('20200701', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
- AND B.ORD_EXCH_GB = 'O'
|
|
|
|
|
- AND B.ORD_DTL_STAT NOT IN ('G013_00', 'G013_10', 'G013_98') -- 주문접수,입금대기,입금전취소 제외
|
|
|
|
|
- )
|
|
|
|
|
- -- 판매수
|
|
|
|
|
- , TAB_SELL_QTY AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(ORD_QTY) AS VAL
|
|
|
|
|
- , '1' AS GBN
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- FROM TAB
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 매출
|
|
|
|
|
- , TAB_ORD AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(ORD_AMT + CPN1_DC_AMT + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = A.ORD_DTL_NO)) AS VAL
|
|
|
|
|
- , '2' AS GBN
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- FROM TAB A
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 즉시/상품쿠폰
|
|
|
|
|
- , TAB_GOODS_CPN AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(CPN1_DC_AMT + GOODS_CPN_DC_AMT) AS VAL
|
|
|
|
|
- , '3' AS GBN
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- FROM TAB A
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 다다익선
|
|
|
|
|
- , TAB_TMTB AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(TMTB1_DC_AMT + TMTB2_DC_AMT) AS VAL
|
|
|
|
|
- , '4' AS GBN
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- FROM TAB A
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 장바구니
|
|
|
|
|
- , TAB_CART_CPN AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(CART_CPN_DC_AMT) AS VAL
|
|
|
|
|
- , '5' AS GBN
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- FROM TAB A
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 취소반품갯수
|
|
|
|
|
- , TAB_CNCL_QTY AS (
|
|
|
|
|
- SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(CHG_QTY) AS VAL
|
|
|
|
|
- , '6' AS GBN
|
|
|
|
|
- , E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, AF_CHANNEL, B.AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
- , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
- , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
- ELSE 'X' END AS AGE
|
|
|
|
|
- FROM TB_ORDER_CHANGE_DETAIL A, TB_ORDER_DETAIL B, TB_ORDER C, TB_GOODS E, TB_AF_LINK F, TB_CUSTOMER G
|
|
|
|
|
- WHERE A.ORD_DTL_NO = B.ORD_DTL_NO
|
|
|
|
|
- AND B.ORD_NO = C.ORD_NO
|
|
|
|
|
- AND B.GOODS_CD = E.GOODS_CD
|
|
|
|
|
- AND B.AF_LINK_CD = F.AF_LINK_CD
|
|
|
|
|
- AND C.CUST_NO = G.CUST_NO
|
|
|
|
|
- AND CHG_STAT IN ('G685_18','G685_60') -- 결제후취소,반품완료
|
|
|
|
|
- AND COMPLETE_DT >= DATE_FORMAT('20200701', '%Y%m%d') -- 시작일변수
|
|
|
|
|
- AND COMPLETE_DT <= DATE_FORMAT(CONCAT('20200701', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
- GROUP BY TERM, E.GOODS_CD, B.FORMAL_GB, C.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, AF_CHANNEL, B.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 취소반품액
|
|
|
|
|
- , TAB_CNCL AS (
|
|
|
|
|
- SELECT DATE_FORMAT(COMPLETE_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM((C.CURR_PRICE + (SELECT SUM(OPT_ADD_PRICE * ITEM_QTY) FROM TB_ORDER_DETAIL_ITEM X WHERE X.ORD_DTL_NO = C.ORD_DTL_NO)) * B.CHG_QTY) AS VAL
|
|
|
|
|
- , '7' AS GBN
|
|
|
|
|
- , E.GOODS_CD, C.FORMAL_GB, D.FRONT_GB, EXTMALL_ID, (CASE WHEN DISTRIBUTION_GB = 'G065_20' THEN 'SCM' ELSE 'WMS' END) AS DISTRIBUTION_GB, E.SUPPLY_COMP_CD, AF_CHANNEL, C.AF_LINK_CD, BRAND_CD, ITEMKIND_CD
|
|
|
|
|
- , IFNULL(FN_DEC_AES(G.SEX_GB), 'G007_X') AS SEX_GB
|
|
|
|
|
- , CASE WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 10 AND 19 THEN '10'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 20 AND 29 THEN '20'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 30 AND 39 THEN '30'
|
|
|
|
|
- WHEN (DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(FN_DEC_AES(G.BIRTH_YMD), '%Y') + 1) BETWEEN 40 AND 49 THEN '40'
|
|
|
|
|
- ELSE 'X' END AS AGE
|
|
|
|
|
- FROM TB_ORDER_CHANGE_DETAIL B, TB_ORDER_DETAIL C, TB_ORDER D, TB_GOODS E, TB_AF_LINK F, TB_CUSTOMER G
|
|
|
|
|
- WHERE B.ORD_DTL_NO = C.ORD_DTL_NO
|
|
|
|
|
- AND C.ORD_NO = D.ORD_NO
|
|
|
|
|
- AND C.GOODS_CD = E.GOODS_CD
|
|
|
|
|
- AND C.AF_LINK_CD = F.AF_LINK_CD
|
|
|
|
|
- AND D.CUST_NO = G.CUST_NO
|
|
|
|
|
- AND CHG_STAT IN ('G685_18','G685_60') -- 결제후취소,반품완료
|
|
|
|
|
- AND B.COMPLETE_DT >= DATE_FORMAT('20200701', '%Y%m%d') -- 시작일변수
|
|
|
|
|
- AND B.COMPLETE_DT <= DATE_FORMAT(CONCAT('20200701', '235959'), '%Y%m%d%H%i%s') -- 종료일변수
|
|
|
|
|
- GROUP BY TERM, E.GOODS_CD, C.FORMAL_GB, D.FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, E.SUPPLY_COMP_CD, AF_CHANNEL, C.AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- -- 지급포인트
|
|
|
|
|
- , TAB_SAVE_PNT AS (
|
|
|
|
|
- SELECT
|
|
|
|
|
- DATE_FORMAT(PAY_DT, '%Y-%m-%d') AS TERM
|
|
|
|
|
- , SUM(SAVE_PNT_AMT) AS VAL
|
|
|
|
|
- , '8' AS GBN
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- FROM TAB A
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- )
|
|
|
|
|
- SELECT
|
|
|
|
|
- TERM
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- , ORD_AMT - (GOODS_CPN_AMT + TMTB_AMT + CART_CPN_AMT) - CNCL_AMT AS TOT_AMT
|
|
|
|
|
- , SELL_QTY, ORD_AMT, GOODS_CPN_AMT, TMTB_AMT, CNCL_QTY, CNCL_AMT, SAVE_PNT_AMT
|
|
|
|
|
- , NOW()
|
|
|
|
|
- FROM (
|
|
|
|
|
- SELECT
|
|
|
|
|
- TERM
|
|
|
|
|
- , GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- , SUM(CASE WHEN GBN = '1' THEN VAL ELSE 0 END) AS SELL_QTY
|
|
|
|
|
- , SUM(CASE WHEN GBN = '2' THEN VAL ELSE 0 END) AS ORD_AMT
|
|
|
|
|
- , SUM(CASE WHEN GBN = '3' THEN VAL ELSE 0 END) AS GOODS_CPN_AMT
|
|
|
|
|
- , SUM(CASE WHEN GBN = '4' THEN VAL ELSE 0 END) AS TMTB_AMT
|
|
|
|
|
- , SUM(CASE WHEN GBN = '5' THEN VAL ELSE 0 END) AS CART_CPN_AMT
|
|
|
|
|
- , SUM(CASE WHEN GBN = '6' THEN VAL ELSE 0 END) AS CNCL_QTY
|
|
|
|
|
- , SUM(CASE WHEN GBN = '7' THEN VAL ELSE 0 END) AS CNCL_AMT
|
|
|
|
|
- , SUM(CASE WHEN GBN = '8' THEN VAL ELSE 0 END) AS SAVE_PNT_AMT
|
|
|
|
|
- FROM (
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_SELL_QTY
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_ORD
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_GOODS_CPN
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_TMTB
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_CART_CPN
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_CNCL_QTY
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_CNCL
|
|
|
|
|
- UNION ALL
|
|
|
|
|
- SELECT *
|
|
|
|
|
- FROM TAB_SAVE_PNT
|
|
|
|
|
- ) A
|
|
|
|
|
- GROUP BY TERM, GOODS_CD, FORMAL_GB, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD, SEX_GB, AGE
|
|
|
|
|
- ) X
|
|
|
|
|
-;
|
|
|
|
|
-
|
|
|
|
|
-SELECT * FROM TB_ORDER_DETAIL_ITEM;
|
|
|
|
|
|
|
+;
|