Задать вопрос
Ответы пользователя по тегу MySQL
  • Поменять местами 2 строки в таблице mysql

    @roodz
    Допустим, у нас есть таблица участников матчей participants с полями (id, match_id, position).
    Необходимо поменять местами участников матча.
    Для наглядности добавим в неё поле name, которое хранит исходное сочетание match_id-position
    Уникальность установлена по полям match_id+position.

    Запрос:
    INSERT INTO participants (`id`, `position`, match_id) 
    VALUES (4, 0, 2), (3, 2, 2), (4, 1, 2) 
    ON DUPLICATE KEY UPDATE `position` = VALUES(`position`)

    Результат:
    5de39554ce6c5568387039.png
    Работает без снятия уникальности, одним запросом!
    Ответ написан
    Комментировать