2012-06-09 4 views
1

나는이 쿼리MySQL의 최소 INT

UPDATE table SET this = this-20 WHERE this >= 0 

내가 this 필드 이제까지 0 아래에 가고 싶지 않는 다른 쿼리를 실행하지 않고,이를 보장하기 위해 내가이 쿼리에 추가 할 수있는 몇 가지 추가가 거기에있다? 이 18 살 경우

예를 들어

, 다음은 WHERE (this - 20) >= 0에 -2 (MySQL을 사용)

답변

2

당신은 가장 큰 기능을 사용할 수있다 :

기본적으로 더 큰 값이 이를 고려하여이 값을 설정
UPDATE table SET this = greatest(0,this-20) WHERE this >= 0 

-20 0.

0

변경하여 조건을 설정 될 것이다. 점검 제한 조건 : ALTER TABLE [table] ADD CONSTRAINT ThisGreaterThanZero CHECK (this >= 0)을 작성하십시오.

관련 문제