[ mysql ] update를 이용한 일괄계산(이 구문으로 모든데이터의 값을 한번에 바꾼다)
페이지 정보
작성자 웹지기 댓글 0건 조회 11,122회 작성일 18-10-01 00:24본문
update 테이블 set 필드명=(가져올필드명*실수) where 조건구문
위와같은 식으로 한번에 여러 필드의 값을 곱하거나 더해서 전체적으로 계산을 쉽게 할 수 있다.
가령 185,555 원이 있을때 이 값을 186,000 으로 올리고 싶을때는
+++ update 테이블 set 필드명 = (가져올필드명 * 0.001) where 조건구문 <== 을 이용하여 일단 뒤에붙은555라는 숫자를 자동올림으로 올려버린다 값은 186 이된다.
이값을 다시 한번 update 구문을 이용하여 정상가격으로 올려준다
+++ update 테이블 set 필드명 = (가져올필드명 *1000) where 조건구문 <== 을 이용하여 값을 원래대로 돌려준다 값은 186,000 이된다.
또, 값을 일괄적으로 올릴시는
update 테이블 set 필드명=(가져올필드명*1.05) where 조건구문 <== 을 이용하여 값을 전체적으로 0.5% 인상시키는 구문이다.
이 update 구문의 단점은 무조건 반올림이라는것이다. 가령 숫자가 123,456 일때 124,000으로 변하지 않는다는 것이다. 이 구문을 이용하여 124,000으로 바꾸고 싶다면 다른 응용이 필요할것같다
ound(숫자,자릿수) -- 반올림
ceiling(숫자) -- 소수 첫번째값을 무조건 올림
floor(숫자) -- 소수 첫번째 값을 무조건 내림
활용--
update ----------------- round((가져올필드명*1.05),2) ------------------------------
기존 -1234-1244일때 010을 붙이고 싶다면
문자의 값을 더하고 싶을 때는 update 테이블 set hp=concat('010'.hp);
하면 010-1234-1244가 된다
댓글목록
등록된 댓글이 없습니다.