在我的MySQL表中,我在字段number
中有192行具有相同的值,值为548。
我需要使用MySQL中的rand函数计算新的值来对这192行进行不同的更新。
每行应具有随机计算的不同值。
我尝试了这个解决方案,但在更新中,我仍然重复具有相同值的行...
UPDATE `tbl`
SET number = FLOOR(100 +(RAND() * 150))
WHERE
EXISTS (SELECT DISTINCT number)
AND number = 548;
答案 0 :(得分:1)
update tbl set number = FLOOR(100 +(RAND() * 150)) where number = 548;
无需检查号码并运行DISTINCT
。如果数字不存在,则只会更新任何内容。