【发布时间】:2018-05-08 21:22:09
【问题描述】:
有没有办法按特定的自定义顺序更新表中的所有记录?我特别指的是一种情况,即实际订单来自“外部”(例如作为 POST 值)。
例如,有一张桌子
id | title | order_idx
----------------------
1 | lorem | 1
2 | ipsum | 2
3 | dolor | 3
我有一个提交隐藏字段的表单,按以下顺序携带 ID 值:2、3、1 我想更新表以在下一行中为 order_idx 添加增量编号,按照表单字段提供的 ID 顺序进行。所以在这种情况下,最终结果应该是这样的:
id | title | order_idx
----------------------
1 | lorem | 3
2 | ipsum | 1
3 | dolor | 2
这可以在单个 UPDATE 查询中以某种方式完成,而不是在 php 循环中运行 3 个查询(每个都包括 WHERE 子句)
【问题讨论】:
标签: mysql sql-update increment