Обновить условия для изменения строки индекса

0

У меня есть данные из таблицы Z

+------+-------+-------+
| id   | Data  | index |
+------+-------+-------+
|    1 |     A |     1 |
|    2 |     B |     2 |
|    3 |     C |     3 |
+------+-------+-------+

и изменить индекс позиции от 1 до 3 и от 3 до 1. как обновление запроса в этом случае? если запустить запрос с индексом условия 1 и установить значение 3, следующее условие 3-го индекса и установить значение 1? в итоговом обновлении идентификатора 1 и 3 значения 3.

Теги:

1 ответ

0
Лучший ответ

Используйте выражение CASE:

UPDATE yourTable
SET 'index' = CASE WHEN 'index' = 1 THEN 3 ELSE 1 END
WHERE 'index' IN (1, 3);

Но обратите внимание, что index - это зарезервированное ключевое слово MySQL, поэтому я должен был поместить его в backticks в вышеуказанный запрос. Вы должны избегать присвоения имен вашим объектам в MySQL с использованием зарезервированных ключевых слов.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню