我有唯一的列url varchar(4),并希望将其更新为唯一的随机字符串,但是有重复项的问题。 所以我想创建这样的循环,但是在定位两次相同的表时遇到问题。
UPDATE IGNORE word SET url = (SELECT GROUP_CONCAT(SUBSTRING('1234567890qwertyuiopasdfghjklzxcvbnm' , 1+ FLOOR(RAND()*LENGTH('1234567890qwertyuiopasdfghjklzxcvbnm')) ,1) SEPARATOR '')
FROM (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) AS dummy_tbl)
WHERE EXISTS (SELECT url FROM word WHERE url IS NULL);
使用单个查询填充我的专栏的最佳方法是什么?
答案 0 :(得分:1)
您应该删除val provider: RefinedProvider[T] forSome { type T <: HasX } = ...
子句,然后直接更新EXISTS
行:
NULL
所以你的完整查询将是:
UPDATE
IGNORE word
SET url = ...
WHERE url IS NULL;