특정 칼럼(필드)를 10원 자리에서 올림해서 UPDATE 하는법? 0 3 1,043

by 최성국 [SQL Query] [2018.08.30 01:38:59]


오라클 초보입니다

가격 칼럼을 10원 자리에서 올림해서 UPDATE 하고 싶습니다

CEIL(price/100) * 100  <= 이용하면 될것 같은데...

전체 쿼리를 좀 작성 해주세요. ㅠ

하나 더 질문 할게요.

10자리가 0이 아닌 레코드를  SELECT 하는 문장도 부탁 드립니다.

exist 인가? 이걸 사용해야 부하를 줄일것 같아서요. 제 경우는 exist 가 불필요할것 같다는 생각이 듭니다

 

예)   1600원 => 1600원

      1610 원 => 1700원, 

      1613원 => 1700원

       1원  => 100원

       99원 => 100원

by 마농 [2018.08.30 08:44:30]

10원 단위만 올림하나요?
혹시 1원 단위는 없나요?
10 원이면 올림해서 100 원이 되는데?
혹시 1 원인 경우?
 - 올림을 해서 100 원이 되야 하는지? -> 100원 미만은 다 올림 처리
 - 버림을 해서   0 원이 되야 하는지? -> 원단위는 절사하고, 10원단위만 올림 처리
 


by 최성국 [2018.08.30 08:53:32]

예)   1600원 => 1600원

      1610 원 => 1700원, 

      1613원 => 1700원

       1원  => 100원

       99원 => 100원


by 마농 [2018.08.30 08:56:54]
-- 1. 갱신 대상 확인 쿼리 --
SELECT price
     , CEIL(price / 100) * 100 AS new_price
  FROM t
 WHERE MOD(price, 100) > 0
;
-- 2. 갱신 쿼리 --
UPDATE t
   SET price = CEIL(price / 100) * 100
 WHERE MOD(price, 100) > 0
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입