swkim 4 سال پیش
والد
کامیت
b118fbf1a4

+ 70 - 0
산출물/3.설계/ERD/.metadata/.log

@@ -6215,3 +6215,73 @@ Command-line arguments:  -os win32 -ws win32 -arch x86 D:\WIDE\workspace\webapps
 
 !ENTRY org.eclipse.osgi 2 1 2021-06-30 15:23:45.699
 !MESSAGE NLS unused message: ToggleColumnVisibilityHandler_5 in: com.tomato.exerd.handler.messages
+!SESSION 2021-07-13 14:47:31.230 -----------------------------------------------
+eclipse.buildId=M20090211-1700
+java.version=1.6.0_24
+java.vendor=Sun Microsystems Inc.
+BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=ko_KR
+Framework arguments:  D:\WIDE\workspace\webapps\style24\style24.doc\산출물\3.설계\ERD\ST24.exerd
+Command-line arguments:  -os win32 -ws win32 -arch x86 D:\WIDE\workspace\webapps\style24\style24.doc\산출물\3.설계\ERD\ST24.exerd
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:32.073
+!MESSAGE NLS unused message: OpenResourceDialog_openButton_text in: org.eclipse.ui.internal.ide.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:32.073
+!MESSAGE NLS unused message: OpenResourceDialog_openWithMenu_label in: org.eclipse.ui.internal.ide.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:32.073
+!MESSAGE NLS unused message: OpenResourceDialog_openWithButton_toolTip in: org.eclipse.ui.internal.ide.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:32.089
+!MESSAGE NLS unused message: CleanDialog_cleanSelectedTaskName in: org.eclipse.ui.internal.ide.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:32.089
+!MESSAGE NLS unused message: RecentWorkspacesPreferencePage_PromptAtStartup_label in: org.eclipse.ui.internal.ide.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:32.089
+!MESSAGE NLS unused message: RecentWorkspacesPreferencePage_RemoveButton_label in: org.eclipse.ui.internal.ide.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.652
+!MESSAGE NLS unused message: url_couldNotResolve_projectDoesNotExist in: org.eclipse.core.internal.utils.messages
+
+!ENTRY org.eclipse.core.resources 2 10035 2021-07-13 14:47:33.715
+!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: Shortcuts_shortcutTab in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: Shortcuts_selectShortcutsLabel in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: Shortcuts_availableMenus in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: Shortcuts_availableCategories in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: Shortcuts_allShortcuts in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: Util_listNull in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: OpenBrowserHandler_NoInfoDialogTitle in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:33.902
+!MESSAGE NLS unused message: AboutFeaturesDialog_SimpleTitle in: org.eclipse.ui.internal.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:37.758
+!MESSAGE NLS unused message: BinaryDumpHandler_1 in: com.tomato.exerd.handler.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:37.758
+!MESSAGE NLS unused message: ConvertToXMLHandler_1 in: com.tomato.exerd.handler.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:37.758
+!MESSAGE NLS unused message: SelectHandler_11 in: com.tomato.exerd.handler.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:37.758
+!MESSAGE NLS unused message: ToggleColumnVisibilityHandler_4 in: com.tomato.exerd.handler.messages
+
+!ENTRY org.eclipse.osgi 2 1 2021-07-13 14:47:37.758
+!MESSAGE NLS unused message: ToggleColumnVisibilityHandler_5 in: com.tomato.exerd.handler.messages

BIN
산출물/3.설계/ERD/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index


BIN
산출물/3.설계/ERD/ST24.exerd


+ 594 - 211
산출물/4.구축/통계/주문통계.sql

@@ -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
         WITH TAB AS (
 			SELECT
@@ -19,6 +611,7 @@
 				, C.SUPPLY_COMP_CD
 				, C.GOODS_CD
 				, 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
 			WHERE A.ORD_NO = B.ORD_NO
 				AND B.GOODS_CD = C.GOODS_CD
@@ -184,214 +777,4 @@
 			) A
 			GROUP BY TERM, FRONT_GB, EXTMALL_ID, DISTRIBUTION_GB, SUPPLY_COMP_CD, AF_CHANNEL, AF_LINK_CD, BRAND_CD, ITEMKIND_CD
 		) 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;
+;