2013-03-18 4 views
0

나는 CASE 문을 사용하고 싶은 MySQL 라인을 가지고있다. 그러나 나는 제대로하고 있다고 생각하지 않는다. 플래그가 특정 값으로 설정되어 있는지 확인한 다음 플래그가 설정된 값에 따라 플래그를 업데이트해야합니다.MySQL : CASE 문에 문제가

$sql = 'UPDATE table SET flag = CASE WHEN flag = 2 THEN 0 ELSE flag = 3'

가 유효한 SQL인가요 : 내 MySQL의 다음은? 플래그의 값을 2로 설정하고 0으로 설정하고 그렇지 않으면 3으로 설정하면됩니다. SQL을 수정하면 어떻게됩니까?

+0

명령 끝에 'END'를 추가하십시오. –

답변

1

현재 쿼리가 매우 가까운, 코드가 될 것입니다 다음 flag2 같을 때 그 다음, 2에 값이 같지 않으면

UPDATE table 
SET flag = CASE WHEN flag = 2 THEN 0 ELSE 3 END 

이것은, 0flag 열을 업데이트합니다 3으로 업데이트됩니다.

+0

아, 끝 잊어 버렸어. 좋아, 고마워. – sehummel

관련 문제