[MySQL] Поменять две строки местами
менять местами остальные значения...
Или не одним, но чтобы не надо было в программе ничего запоминать для этого?
UPDATE T1
SET Id =
CASE
WHEN Id = 1 THEN 2
ELSE 1
END
WHERE Id IN (1, 2)
в MSSQL-е работает, в MySQL тоже должно работать
Оказалось, всё совсем просто...
Оставить комментарий
kruzer25
Есть ключ ID, есть две строки --- надо поменять их ID местами.Как это можно сделать?
Есть, конечно, вариант поменять ID одной на какой-нибудь 0, ID другой на ID первой, ID первой на ID второй --- но это три операции, придётся возиться с блокировкой таблицы. Или кто-нибудь знает, как выполнить три операции за один запрос?
Но в любом случае, при такой реализации будет происходить перестройка индексов... по идее. этого можно как-то избежать?
---
...Я работаю...