Bläddra i källkod

총알배송 추가

gagamel 5 år sedan
förälder
incheckning
c1fc127f25

+ 50 - 8
산출물/4.구축/데이터처리/11.상품혜택생성(TB_GOODS_BENEFIT).sql

@@ -1,4 +1,4 @@
-TRUNCATE TABLE TB_GOODS_BENEFIT;
+TRUNCATE TABLE TB_GOODS_BENEFIT_TMP;
 
 -- 쿠폰할인상품 생성
 INSERT INTO TB_GOODS_BENEFIT_TMP (
@@ -133,7 +133,7 @@ GROUP  BY G.GOODS_CD
 HAVING COUNT(*) > 0
 ;
 
--- 무료배송상품 생성
+-- 상품혜택임시 - 무료배송상품 생성
 INSERT INTO TB_GOODS_BENEFIT_TMP (
        GOODS_CD
      , BENEFIT_GB
@@ -158,7 +158,7 @@ FROM   (
 WHERE  MIN_ORD_AMT <= CURR_PRICE
 ;
 
--- 사은품상품 생성
+-- 상품혜택임시 - 사은품상품 생성
 INSERT INTO TB_GOODS_BENEFIT_TMP (
        GOODS_CD
      , BENEFIT_GB
@@ -222,7 +222,7 @@ FROM   (
 GROUP  BY GOODS_CD
 ;
 
--- 신상상품 생성
+-- 상품혜택임시 - 신상상품 생성
 INSERT INTO TB_GOODS_BENEFIT_TMP (
        GOODS_CD
      , BENEFIT_GB
@@ -239,9 +239,51 @@ AND    GS.STOCK_QTY > 0 /*재고있는상품*/
 AND    G.FORMAL_GB = 'G009_10' /*정상상품(=신상)*/
 ;
 
-TRUNCATE TABLE TB_CATE_FILTER;
+-- 상품혜택임시 - 총알배송 생성
+INSERT INTO TB_GOODS_BENEFIT_TMP (
+       GOODS_CD
+     , BENEFIT_GB
+)
+SELECT G.GOODS_CD
+     , '50'       AS BENEFIT_GB /*총알배송*/
+FROM   TB_GOODS G
+     , TB_GOODS_STOCK GS
+WHERE  G.GOODS_CD = GS.GOODS_CD
+AND    G.GOODS_STAT = 'G008_90' /*승인완료상품*/
+AND    G.SELF_MALL_YN = 'Y' /*몰노출상품*/
+AND    NOW() BETWEEN G.SELL_STDT AND G.SELL_EDDT /*판매기간*/
+AND    G.SELF_GOODS_YN = 'Y' /*자사상품만*/
+AND    GS.STOCK_QTY > 0 /*재고있는상품*/
+AND    NOT EXISTS (SELECT 1
+                   FROM   TB_GOODS_SHOT_DELV_SKIP
+                   WHERE  GOODS_CD = G.GOODS_CD
+                  )
+;
+
+-- 상품혜택 삭제
+DELETE FROM TB_GOODS_BENEFIT;
 
-INSERT INTO TB_CATE_FILTER
-SELECT *
-FROM   TMP_CATE_FILTER
+-- 상품혜택 생성
+INSERT INTO TB_GOODS_BENEFIT (
+       GOODS_CD
+     , BENEFIT_GB
+     , REG_NO
+     , REG_DT
+)
+SELECT DISTINCT
+       GOODS_CD
+     , BENEFIT_GB
+     , 0          AS REG_NO
+     , NOW()      AS REG_DT
+FROM   (
+        SELECT GOODS_CD
+             , BENEFIT_GB
+        FROM   TB_GOODS_BENEFIT_TMP
+        UNION ALL
+        SELECT GC.GOODS_CD
+             , G.BENEFIT_GB
+        FROM   TB_GOODS_BENEFIT_TMP G
+             , TB_GOODS_COMPOSE GC
+        WHERE  G.GOODS_CD = GC.COMPS_GOODS_CD
+       ) Z
 ;