테이블에 (INT) 자료형의 컬럼이 있고 해당 컬럼 값을 누적 합산해야 하는 기능을 만든다고 할때

 

저장되어 있는 값을 우선 (SELECT) 조회한 뒤, 합산 후 (UPDATE)수정 할 수도 있지만

 

(SELECT) 조회할 필요없이 (UPDATE) 조회와 수정을 한번에 할 수도 있음

 

 

 

UPDATE
        '테이블명'
   SET
        '컬럼명' = IFNULL('컬럼명',0) + #{'합산할 값이 담긴 파라미터명'}
 /* 컬럼값이 NULL일 경우 연산을 할 수 없으니 INFULL을 이용해 NULL일 경우 0으로 대체하도록 설정 */
 WHERE
        '컬럼명' = #{조건값}
        
/* 누적합산 하기 위해 '+' 를 하였는데 원하는 형식에 맞춰 '-' 빼거나, '*' 곱하거나 '/' 나누기도 가능 */

/* 나누기를 할때 주의할 점은 0으로 나눌 수 없다는 것. 0으로 나누려고 하면 Error Code: 1365. Division by 0
 과 같은 오류가 발생함 */

 

 

 

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기