HOME   ·Î±×ÀΠ  ȸ¿ø°¡ÀÔ
    
ȸ¿ø°¡ÀÔ
ºñ¹Ð¹øÈ£ ã±â ÀÚµ¿·Î±ä
ÀÌÀü°Ô½ÃÆÇ
   free_board
   °Ç°­°Ô½ÃÆÇ
   ¿À¶óŬDB
   Linux
   HTML/javascript
   Áú¹®°ú ´ä
È£¼­±â
   À̹ÌÁö°Ô½ÃÆÇ  
   °Ç°­°Ô½ÃÆÇ  
   À½¾ÇÀÚ·á  
   ¼ºÁØÀÌ °Ô½ÃÆÇ  
[ÀϹÝ] ÀÏ°ýó¸® Äõ¸®¹®
  È£¼® ´Ô²²¼­ ¾´ ±ÛÀÔ´Ï´Ù - 121.¢½.39.7 ÀÐÀ½:1846  
// -----------
SELECT * FROM STRNCDTB@WEBPOS WHERE SALE_DATE BETWEEN '20130125' AND '20130206' AND SUBSTR(MS_NO,1,4)='E009' AND CARD_CO='999';

-- STRNCDTB UPDATE
DECLARE

  CURSOR CARD_INFO IS
  SELECT * FROM TMPSTRNCDTB WHERE MS_NO='E00901' AND SALE_DATE='20130129' AND POS_NO='04' ORDER BY SALE_DATE;

BEGIN

  FOR C IN CARD_INFO LOOP
 
    UPDATE STRNCDTB@WEBPOS
    SET    CARD_CO = C.ORG_CARD_CO
    WHERE  SALE_DATE = C.SALE_DATE
    AND    MS_NO     = C.MS_NO
    AND    POS_NO    = C.POS_NO
    AND    BILL_NO   = C.BILL_NO
    AND    VAN_CD    = C.VAN_CD
    AND    CARD_CO   = C.CARD_CO;
   
  END LOOP;

END;



--SDCARDTB UPDATE
DECLARE
 
  CURSOR CARD_SUM IS
  SELECT MS_NO,SALE_DATE,CARD_CO,APPR_FG,CHAIN_NO,CHAIN_AREA
        ,NVL(DECODE(SALE_FG,'0',COUNT(*)),0)      AS CARD_CNT
        ,NVL(DECODE(SALE_FG,'0',SUM(APPR_AMT)),0) AS CARD_AMT
        ,NVL(DECODE(SALE_FG,'1',COUNT(*)),0)      AS C_CARD_CNT
        ,NVL(DECODE(SALE_FG,'1',SUM(APPR_AMT)),0) AS C_CARD_AMT
  FROM   STRNCDTB WHERE MS_NO='E00901' AND SALE_DATE='20130129' AND POS_NO='04'
  GROUP BY MS_NO,SALE_DATE,CARD_CO,APPR_FG,CHAIN_NO,CHAIN_AREA,SALE_FG
  ;
 
BEGIN

    FOR C IN CARD_SUM LOOP
   
      MERGE INTO SDCARDTB A
      USING (SELECT * FROM DUAL) B
      ON    (    A.MS_NO = C.MS_NO AND A.SALE_DATE = C.SALE_DATE AND A.CARD_CO = C.CARD_CO AND A.APPR_FG = C.APPR_FG )
      WHEN MATCHED THEN     
         UPDATE
         SET    CARD_CNT   = C.CARD_CNT
              , CARD_AMT   = C.CARD_AMT
              , C_CARD_CNT = C.C_CARD_CNT
              , C_CARD_AMT = C.C_CARD_AMT     
      WHEN NOT MATCHED THEN
         INSERT (MS_NO,SALE_DATE,CARD_CO,APPR_FG,CHAIN_NO,CHAIN_AREA,CARD_CNT,CARD_AMT,C_CARD_CNT,C_CARD_AMT)
         VALUES (C.MS_NO,C.SALE_DATE,C.CARD_CO,C.APPR_FG,C.CHAIN_NO,C.CHAIN_AREA,C.CARD_CNT,C.CARD_AMT,C.C_CARD_CNT,C.C_CARD_AMT);
   
    END LOOP;

END;

-- SDCARD DELETE
DELETE FROM SDCARDTB WHERE MS_NO='E00901' AND SALE_DATE='20130129'  AND CARD_CO='999';

-- STRNCDTB UPDATE
DECLARE

  CURSOR CARD_INFO IS
  SELECT * FROM TMPSTRNCDTB WHERE MS_NO='E00903' AND SALE_DATE BETWEEN '20130129' AND '20130205' AND POS_NO='01' ORDER BY SALE_DATE;

BEGIN

  FOR C IN CARD_INFO LOOP
 
    UPDATE STRNCDTB@WEBPOS
    SET    CARD_CO = C.ORG_CARD_CO
    WHERE  SALE_DATE = C.SALE_DATE
    AND    MS_NO     = C.MS_NO
    AND    POS_NO    = C.POS_NO
    AND    BILL_NO   = C.BILL_NO
    AND    VAN_CD    = C.VAN_CD
    AND    CARD_CO   = C.CARD_CO;
   
  END LOOP;

END;

--SDCARDTB UPDATE
DECLARE
 
  CURSOR CARD_SUM IS
  SELECT MS_NO,SALE_DATE,CARD_CO,APPR_FG,CHAIN_NO,CHAIN_AREA
        ,NVL(DECODE(SALE_FG,'0',COUNT(*)),0)      AS CARD_CNT
        ,NVL(DECODE(SALE_FG,'0',SUM(APPR_AMT)),0) AS CARD_AMT
        ,NVL(DECODE(SALE_FG,'1',COUNT(*)),0)      AS C_CARD_CNT
        ,NVL(DECODE(SALE_FG,'1',SUM(APPR_AMT)),0) AS C_CARD_AMT
  FROM   STRNCDTB WHERE MS_NO='E00903' AND SALE_DATE BETWEEN '20130129' AND '20130205' AND POS_NO='01'
  GROUP BY MS_NO,SALE_DATE,CARD_CO,APPR_FG,CHAIN_NO,CHAIN_AREA,SALE_FG
  ;
 
BEGIN

    FOR C IN CARD_SUM LOOP
   
      MERGE INTO SDCARDTB A
      USING (SELECT * FROM DUAL) B
      ON    (    A.MS_NO = C.MS_NO AND A.SALE_DATE = C.SALE_DATE AND A.CARD_CO = C.CARD_CO AND A.APPR_FG = C.APPR_FG )
      WHEN MATCHED THEN     
         UPDATE
         SET    CARD_CNT   = C.CARD_CNT
              , CARD_AMT   = C.CARD_AMT
              , C_CARD_CNT = C.C_CARD_CNT
              , C_CARD_AMT = C.C_CARD_AMT     
      WHEN NOT MATCHED THEN
         INSERT (MS_NO,SALE_DATE,CARD_CO,APPR_FG,CHAIN_NO,CHAIN_AREA,CARD_CNT,CARD_AMT,C_CARD_CNT,C_CARD_AMT)
         VALUES (C.MS_NO,C.SALE_DATE,C.CARD_CO,C.APPR_FG,C.CHAIN_NO,C.CHAIN_AREA,C.CARD_CNT,C.CARD_AMT,C.C_CARD_CNT,C.C_CARD_AMT);
   
    END LOOP;

END;

DELETE FROM SDCARDTB WHERE MS_NO='E00903' AND SALE_DATE BETWEEN '20130129' AND '20130205'  AND CARD_CO='999';


¸ñ·Ï

ºÐ·ù ¼±ÅÃ
ÀÏ¹Ý ÀÏ°ýó¸® Äõ¸®¹® È£¼® 13-02-21 1847
137 ÀÏ¹Ý mysql Æ©´× ÃÖÀûÈ­ È£¼® 12-04-07 1802
136 ÀÏ¹Ý ¿À¶óŬÀÇ sequence ÃʱâÈ­ È£¼® 11-11-24 2252
135 ÀÏ¹Ý ·¹µåÇÞ ¿£ÅÍÇÁ¶óÀÌÁî4¿¡ ¿À¶óŬ9i(9.2.0.4)¼³Ä¡ È£¼® 11-10-07 1817
134 ÀÏ¹Ý not in º¸´Ù´Â exist ¸¦ ¸¹ÀÌ »ç¿ëÇغ¸ÀÚ È£¼® 11-04-04 2084
133 ÀÏ¹Ý INDEXÀÇ »ç¿ë¿©ºÎ È®ÀÎÇϱâ È£¼® 11-04-01 1570
132 ÀÏ¹Ý Standby Database ±¸Ãà[ GOOD GOOD ] È£¼® 11-03-16 1640
131 ÀÏ¹Ý Linux ¹× Windows ȯ°æÀ» À§ÇÑ PHP, Oracle 10g Instant Client ¼³Ä¡ È£¼® 11-01-07 1647
130 ÀÏ¹Ý Åäµå³ª ¿À·»Áö ´ëü ¹«·á ¿À¶óŬ Åø È£¼® 10-12-30 1938
129 ÀÏ¹Ý ½ÃÄö½º »ç¿ë¹æ¹ý ( SEQUENCE ) È£¼® 10-04-22 2991
128 ÀÏ¹Ý ¿À¶óŬ ¶óÀ̼¾½º À¯Á® »êÁ¤¹ý È£¼® 10-04-13 2856
127 ÀÏ¹Ý ¿À¶óŬ ¹é¾÷ ¹æ¹ý ( cold ¹é¾÷, hot¹é¾÷, export ¹é¾÷ ) È£¼® 10-02-17 3458
126 ÀÏ¹Ý ¿À¶óŬ ¼³Ä¡½Ã ÀÚ¹Ù°ü·Ã ¿¡·¯Ã³¸® ÄÉÀ̽º È£¼® 10-02-17 2708
125 ÀÏ¹Ý pfile°ú spfile ÀÇ Â÷ÀÌÁ¡ È£¼® 10-02-01 3392
124 ÀÏ¹Ý Standby Database ±¸Ãà È£¼® 10-01-31 2803
1 [2] [3] [4] [5] [6] [7] [8] [9] [10]  ´ÙÀ½¸Ç³¡

 
Copyright © zenos.pe.kr. All rights reserved.