我的 MySQL 中有一个表 customers_info
,其中包含“地址”列。
出于隐私原因,我想将所有行中的“地址”值替换为随机文本(任何内容,例如 xwdjduhyrmdz
)。
我发现了这个 SQL 并在 phpmyadmin 上尝试过,但对我不起作用。
UPDATE customer_info
SET address = LEFT(REPLACE(CAST(NEWID() AS CHAR(40)), '-', ''), @Characters)
我该怎么做?
最佳答案
此查询会将 address
列的所有行更新为 6 个字符的随机字符串
UPDATE `yourTable` SET `address` = CONCAT(
SUBSTRING('abcdefghijklmnopqrstuvwxyz', FLOOR(RAND()*26) + 1, 1),
SUBSTRING('abcdefghijklmnopqrstuvwxyz', FLOOR(RAND()*26) + 1, 1),
SUBSTRING('abcdefghijklmnopqrstuvwxyz', FLOOR(RAND()*26) + 1, 1),
SUBSTRING('abcdefghijklmnopqrstuvwxyz', FLOOR(RAND()*26) + 1, 1),
SUBSTRING('abcdefghijklmnopqrstuvwxyz', FLOOR(RAND()*26) + 1, 1),
SUBSTRING('abcdefghijklmnopqrstuvwxyz', FLOOR(RAND()*26) + 1, 1)
);
关于mysql - 如何用随机字符串替换一列所有记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49574229/