@SvizzZzy

Как увеличить поле id до максимального auto increment через update?

Нужно что то вроде:
update `table` set `id`=last_auto_increment where `blabla`='blablabla'
Т.е мне нужно увеличить id определенной записи до максимального значения, будто эту запись только что добавили и её auto increment является максимальным.

Как такое сделать?

Думал про set id=id+1, но тогда наверно собьется весь auto increment таблицы и будут проблемы?
  • Вопрос задан
  • 193 просмотра
Решения вопроса 1
knetesin
@knetesin
Шпион
Думал про set id=id+1, но тогда наверно собьется весь auto increment таблицы и будут проблемы?
можно и так, но проблемы могут начаться из за пробелов в id - зависит от вашей бизнес логики, в целом это вполне допустимо

или что то в таком роде тоже должно сработать
UPDATE `table` SET `id`=(SELECT id FROM (SELECT id FROM `table` ORDER by id desc LIMIT 1)+1) where `blabla`='blablabla'
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@MoonMaster
Программист и этим все сказано
UPDATE 'table' SET id = (SELECT MAX(id)+1 FROM 'table') WHERE 'column'='item'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы