2014-11-21 2 views
-1
UPDATE kasutajad \ 
IF (raadioslot0 = %i) SET (raadioslot0 = -1), \ 
IF (raadioslot1 = %i) SET (raadioslot1 = -1), \ 
IF (raadioslot2 = %i) SET (raadioslot2 = -1), \ 
IF (raadioslot3 = %i) SET (raadioslot3 = -1), \ 
IF (raadioslot4 = %i) SET (raadioslot4 = -1) \ 
WHERE id = %i 

사용할 수 있습니까? 그렇지 않다면, 어떻게 이것을 사용하여 이것을 할 수 있습니까? 고마워요!MySQL의 조건 인 경우 - 이것을 다음과 같이 사용할 수 있습니까?

+1

에서 ['CASE'] (http://dev.mysql.com/doc/refman/5.6/en/case.html) 문에 대한 설명서를 읽고 당신이있는 경우에 후속 질문을 게시 문제. – tadman

+0

당신은 그것을 시험해 볼 수 있으며 어떤 문제가 있다면 어떤 문제가 있는지 알려줄 수 있습니다. 또는 어떤 오류가 발생하면지고있다. –

답변

0

아니요, 표시하는 것처럼 IF을 사용할 수 없습니다. 표현식에 열만 설정할 수 있으며 표현식에 IF이 포함될 수 있습니다. IF에는 "else"인수가 있으며이 인수는 동일한 열일 수 있습니다. 이 경우 열에 자체 값이 지정되며,이 경우에는 변경되지 않습니다.

업데이트에 SET 키워드가 하나만 있어야합니다.

UPDATE kasutajad SET 
raadioslot0 = IF(raadioslot0 = %i, -1, raadioslot0), 
raadioslot1 = IF(raadioslot1 = %i, -1, raadioslot1), 
raadioslot2 = IF(raadioslot2 = %i, -1, raadioslot2), 
raadioslot3 = IF(raadioslot3 = %i, -1, raadioslot3), 
raadioslot4 = IF(raadioslot4 = %i, -1, raadioslot4) 
WHERE id = %i 
+0

완벽한, 감사합니다! 필자가 필요한 모든 것이 기본 이었으므로 MySQL에 대해서는 경험이별로 없습니다. – user2716044

관련 문제