【MYSQL】 交换两条记录的某个字段的值

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_26440803/article/details/81170946

交换两条记录的某个字段的值

在很多场景都需要支持拖住排序,上下移动步骤。为此我们可以使用下面一条SQL语句搞定

 UPDATE od_layer AS g1 JOIN step AS g2 ON (g1.`id`=#{preId} AND g2.`id`=#{nextId})
 OR (g1.`id`= #{nextId} AND g2.`id` = #{preId})
 SET g1.`sorted` = g2.`sorted`,g2.`sorted`=g1.`sorted`

preIdnextId代表两条记录IDsorted 代表需要交换的属性。

猜你喜欢

转载自blog.csdn.net/qq_26440803/article/details/81170946