2016-05-09 2 views
-1

Я пробовал оба этих метода, и моя таблица никогда не обновляется. Он просто остается прежним. Что я делаю не так?Как выполнить массовое или пакетное обновление mysql в одном запросе

UPDATE localhost_campaigns.list_name_counter SET counter = (CASE purl WHEN 'dingo' THEN '1' WHEN 'koala' THEN '0' END) WHERE purl IN (dingo, koala); 

UPDATE localhost_campaigns.list_name_counter SET counter = CASE WHEN purl = 'dingo' THEN '1' WHEN purl = 'koala' THEN '0' END WHERE purl IN (dingo, koala); 
+3

попробовать это как WHERE изнаночной IN ("динго", "коала"); – hakiko

+1

Попробуйте включить отчет об ошибках как в PHP, так и в любом MySQL API, который вы используете. Не ссылаясь на ваши строки, вы должны создать синтаксическую ошибку MySQL. – Mike

+0

спасибо @hakkikonu, что сработало. – leoarce

ответ

1

В качестве реального решения;

Используйте цитаты для строк.

как

UPDATE localhost_campaigns.list_name_counter 
SET counter = (CASE purl WHEN 'dingo' THEN '1' WHEN 'koala' THEN '0' END) 
WHERE purl IN ("dingo", "koala"); 
Смежные вопросы