Задавайте вопросы, мы ответим
Вы не зашли.
Столкнулся с проблемой.. таблица:id,a,b,c,val.
a,b,c- это уникальный ключ
val - числовое значение
таблица x имеет следующие значения
id__a__b__c__val
1 5 5 1 2
2 5 6 1 2
3 5 6 2 2
4 6 7 2 2
_______________
Вопрос: как можно обновить таблицу при условии, если: (a=5 and b=5) or (a=5 and b=6). то меняем у этих строк значение b=9, а val при одинаковых 'c' складывался.
То есть в итоге ответ будет:
id__a__b__c__val
1 5 9 1 4
- - - - -
3 5 9 2 2
4 6 7 2 2
Запрос Insert .. on dublicate key.. работает на вставку новых строк, а мне нужно обновить таблицу по условию, типа запроса:
Update x set b=9 WHERE a=5 and ( b='5' or b='6')
Что можете посоветовать?
Неактивен
Как я понимаю, нужно два действия
1)
Неактивен
Спасибо, за совет! Опечатка?
Неактивен
И еще вопрос, не понял как работает запрос
Неактивен
Спасибо, действительно опечатка. Этот пример показывает почему нужно использовать DROP TEMPORARY TABLE, а не универсальную DROP TABLE.
SELECT .. FOR UPDATE блокирует выбранные строки до конца текущей транзакции.
Неактивен