标签: mysql sql-update
我的表格个人资料中有两列id和education。现在我想随机分配教育字段值,这些值可以在此集('HA','BA,'CA' and 'DA')中。我怎么能在一个命令中执行此操作。 id是此表的主键。
id
education
('HA','BA,'CA' and 'DA')
答案 0 :(得分:4)
正如ELT(N,str1,str2,str3,…)所述:
ELT(N,str1,str2,str3,…)
如果str1,N = 1 str2,则返回N = 2,等等。
str1
N = 1
str2
N = 2
正如RAND()所述:
RAND()
要获取 R 范围内的随机整数 i <= R < j ,请使用表达式FLOOR(i + RAND() * (j – i))。
R
i <= R < j
FLOOR(i + RAND() * (j – i))
因此:
UPDATE my_table SET education = ELT(FLOOR(1 + RAND() * 4), 'HA', 'BA', 'CA', 'DA')
在sqlfiddle上查看。