我有一个类别表。
我有这样的记录
id | name | symbol
1 | Feeders | FEE
2 | Ovens |
3 | Routers |
我在这张表中有很多记录。我想用这样的类别名称更新符号字段,获取类别名称,提取 3 个随机字符(必须按顺序并始终选择第一个随机字符),然后将它们转换为大写并应用更新。我怎样才能做到这一点。
例如,我希望使用 OVE 或 OVN 或 OVS 或 OEN 或 OES 等更新烤箱。
我如何在一个查询中做到这一点。
这是我尝试过的,但有时会带来 1 个字符,有时会带来 2 个字符,有时会带来 3 个字符
UPDATE category
SET symbol = (select
upper(SUBSTRING(name, 1+ FLOOR(RAND()*LENGTH(name)),3))
from default_category
where category_id = 2)
where category_id = 2