vps交流

[疑问] 请教个mysql的语句 没内容的都添加内容(1-50000随机数字)


aaa表段里的bbb字段  一部分有内容 一部分没内容
目的:bbb字段里没内容的都添加内容(1-50000随机数字)
例如:
1
2
3
……
12345
……
50000

用phpMyAdmin

好的,我们可以做一个 SQL 语句来更新 `bbb` 字段为空的记录,并为它们分配一个 1 到 50000 的随机数字。为了演示,我将使用表名 `example_table` 和字段名 `random_value`。你可以根据实际情况修改表名和字段名。

以下是更新 `random_value` 字段的 SQL 语句示例:

“`sql
UPDATE example_table
SET random_value = FLOOR(1 + (RAND() * 50000))
WHERE random_value IS NULL OR random_value = ”;
“`

解释:
– `RAND()` 函数生成一个 0 到 1 之间的随机浮点数。
– `RAND() * 50000` 生成一个 0 到 50000 之间的浮点数。
– `FLOOR(1 + (RAND() * 50000))` 生成一个 1 到 50000 之间的整数。
– `WHERE random_value IS NULL OR random_value = ”` 确保只更新 `random_value` 字段为空的记录。

如果 `random_value` 字段已经是整数类型,可以直接使用上述语句。如果它是字符串类型,你可能需要额外处理空字符串情况,或者将随机数转为字符串插入。

确保在执行更新之前备份数据,以免意外数据丢失。

  1. UPDATE `aaa` SET `bbb` = FLOOR(RAND() * 50000) WHERE `bbb` = ”

复制代码