在表中的值中放置随机值

时间:2017-02-24 14:05:38

标签: mysql

我想将随机值放入我的用户表中,其中包含来自集合的数据。

我有一个名字和姓氏列表,我想替换表格中的所有名称列。我在考虑使用一套

SET @firstNames = 'Thomas,Chris,Sophia,Ava';
SET @surNames = 'Peterson,Bolander,Travolta,Anniston';

是否可以编写一个随机更新每个用户的名称列中的值的查询?

User table
---------------------
id
name
password
created_at

2 个答案:

答案 0 :(得分:0)

我刚刚找到了一种方法

UPDATE persons 
SET first_name = (
    SELECT val FROM ( 
        SELECT '' as val  
        UNION ALL SELECT 'Thomas' as val
        UNION ALL SELECT 'Chris' as val  
        UNION ALL SELECT 'Sophia' as val 
        ......
    ) AS vals ORDER BY RAND() LIMIT 1
)

答案 1 :(得分:-1)

使用Mysql做这个不是个好主意,尝试用你的前端语言做到这一点。在Mysql中我们有RAND()函数,但是返回0到1之间的随机数,用这个来获取你想要的输出是很长的路,所以tryout从你的前端语言传递随机名,这是非常容易的任务< / p>