set @q = -1;
update
routes
join (
select routes.*, @q:=ifnull(@q, -1) +1 new_seq
from routes
order by trunk_id = 120 desc, seq
) new_routes using (route_id, trunk_id)
set
routes.seq = new_routes.new_seq
where route_id = 16;
INSERT IGNORE INTO <table_name> (...) VALUES (...)
INSERT INTO <table_name> (...) VALUES (...) ON DUPLICATE KEY UPDATE