カテゴリのテーブルがあります。
このような記録があります
id | name | symbol
1 | Feeders | FEE
2 | Ovens |
3 | Routers |
このテーブルには多くのレコードがあります。このようなカテゴリ名でシンボル フィールドを更新し、カテゴリ名を取得し、3 つのランダムな文字を抽出し (順序どおりで、常に 2 つのランダムな最初の文字を選択する必要があります)、それらを大文字に変換して更新を適用します。どうやってやるの。
たとえば、オーブンを OVE、OVN、OVS、OEN、OES などで更新したいのですが
、1 つのクエリでこれを行うにはどうすればよいですか。
これは私が試したものですが、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