swkim 4 gadi atpakaļ
vecāks
revīzija
9e787729b6
1 mainītis faili ar 67 papildinājumiem un 9 dzēšanām
  1. 67 9
      산출물/4.구축/통계/회원통계.sql

+ 67 - 9
산출물/4.구축/통계/회원통계.sql

@@ -330,7 +330,7 @@ FROM (
         FROM TB_CUSTOMER
         WHERE CUST_NO > 0
             AND CUST_STAT = 'G104_10'
-            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -1 YEAR ), '%Y%m%d%H%i%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
+            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -1 YEAR ), '%Y%m%d%H%i%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
         -- 12개월
         UNION ALL
         SELECT COUNT(1) AS CNT
@@ -338,8 +338,8 @@ FROM (
         FROM TB_CUSTOMER
         WHERE CUST_NO > 0
             AND CUST_STAT = 'G104_10'
-            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -1 YEAR ), '%Y%m%d%H%i%s')
-            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -1 YEAR ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
         -- 9개월
         UNION ALL
         SELECT COUNT(1) AS CNT
@@ -347,8 +347,8 @@ FROM (
         FROM TB_CUSTOMER
         WHERE CUST_NO > 0
             AND CUST_STAT = 'G104_10'
-            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
-            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
         -- 6개월
         UNION ALL
         SELECT COUNT(1) AS CNT
@@ -356,8 +356,8 @@ FROM (
         FROM TB_CUSTOMER
         WHERE CUST_NO > 0
             AND CUST_STAT = 'G104_10'
-            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
-            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
         -- 3개월
         UNION ALL
         SELECT COUNT(1) AS CNT
@@ -365,7 +365,7 @@ FROM (
         FROM TB_CUSTOMER
         WHERE CUST_NO > 0
             AND CUST_STAT = 'G104_10'
-            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
+            AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
             AND LOGIN_LDT < DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
     ) Z
 ) X
@@ -382,7 +382,7 @@ SELECT
 FROM TB_CUSTOMER
 WHERE CUST_NO > 0
     AND CUST_STAT = 'G104_10'
-    AND LOGIN_LDT < DATE_FORMAT(NOW(), '%Y%m%d%H%i%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
+    AND LOGIN_LDT < DATE_FORMAT(STR_TO_DATE(DATE_FORMAT(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H%i%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
 ;
 
 -- 회원통계 > 회원활동현황 > 마케팅수신동의현황
@@ -478,4 +478,62 @@ FROM (
         AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
         AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
 ) Z
+;
+
+
+-- 회원통계 > 회원활동현황 > 휴면전환 잔여일별현황 > 엑셀다운로드
+SELECT
+    *
+FROM (
+    -- 12개월
+    SELECT '12개월' AS GB -- 12개월
+        , CUST_ID
+        , FN_DEC_AES(CUST_NM) AS CUST_NM
+        , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
+        , FN_DEC_AES(EMAIL) AS EMAIL
+        , SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
+    FROM TB_CUSTOMER
+    WHERE CUST_NO > 0
+        AND CUST_STAT = 'G104_10'
+        AND LOGIN_LDT > DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -1 DAY ), '%Y%m%d%H%i%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
+    -- 9개월
+    UNION ALL
+    SELECT '9개월' AS GB -- 9개월
+        , CUST_ID
+        , FN_DEC_AES(CUST_NM) AS CUST_NM
+        , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
+        , FN_DEC_AES(EMAIL) AS EMAIL
+        , SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
+    FROM TB_CUSTOMER
+    WHERE CUST_NO > 0
+        AND CUST_STAT = 'G104_10'
+        AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
+        AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -1 DAY ), '%Y%m%d%H%i%s')
+    -- 6개월
+    UNION ALL
+    SELECT '6개월' AS GB -- 6개월
+        , CUST_ID
+        , FN_DEC_AES(CUST_NM) AS CUST_NM
+        , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
+        , FN_DEC_AES(EMAIL) AS EMAIL
+        , SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
+    FROM TB_CUSTOMER
+    WHERE CUST_NO > 0
+        AND CUST_STAT = 'G104_10'
+        AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
+        AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
+    -- 3개월
+    UNION ALL
+    SELECT '3개월' AS GB -- ~3개월
+        , CUST_ID
+        , FN_DEC_AES(CUST_NM) AS CUST_NM
+        , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
+        , FN_DEC_AES(EMAIL) AS EMAIL
+        , SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
+    FROM TB_CUSTOMER
+    WHERE CUST_NO > 0
+        AND CUST_STAT = 'G104_10'
+        AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
+        AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
+) Z
 ;