php mysql更新并重新分配所有行

时间:2018-06-27 09:37:12

标签: php mysqli

我想用某些规则更新MySQL表。我有3列:ID, Name, Checked,我想将Name更新为所有行,其中Checked = 0。在另一张表中,我列出了从中提取名称的“名称”。

这可能与一个UPDATE查询有关吗,还是我需要使用一些循环?如果说我有11行要更新,但是我有10个名称,查询如何更新这些字段,会不会有问题。

1 个答案:

答案 0 :(得分:0)

我找到解决方法:

UPDATE `table` SET `ID` = (select `ID` from `name` ORDER BY rand() LIMIT 1) WHERE `Lock_ID` = 0

此查询将随机使用其他表中的名称并对其进行更新(这是99%正确的解决方案),它将重新分配每行几乎相同的名称。