2012-08-28 3 views
-1

아래의 업데이트에서 CASE를 수행하려고 시도했습니다.CASE 문을 UPDATE 쿼리에 추가 할 수 있습니까?

UPDATE [table] 
SET CASE WHEN ((order - 20.00) < 0) THEN 0 ELSE (order - 20.00) END 
WHERE id = 1 

하지만 실행하는 데 문제가 있습니다. 나는 어디로 잘못 갔는가?

+1

당신이지고있는 오류 메시지가 무엇으로 업데이트 할 열 이름을 추가하는 것을 잊었다? –

답변

4

설정할 필드를 말해야합니다.

UPDATE [table] 
SET somefield = CASE WHEN order > 20.00 THEN (order - 20.00) ELSE 0 END 
WHERE id = 1 
3

값을 열에 지정해야합니다.

1

닫기, 당신은 당신이 당신의 문

UPDATE [table] 
SET <name-of-column> = (CASE WHEN ((order - 20.00) < 0) THEN 0 ELSE (order - 20.00) END) 
WHERE id = 1 
관련 문제