如何随机清空整个VARCHAR列的一半?

Que*_*low 1 mysql

我想通过将VARCHAR列中的一半数据设置为空字符串来减小测试表的大小.我怎么能这样做,使空字符串在整个包含100万行的表中随机分散?

+----+-----------------------------------+
| ID |          VARCHAR COLUMN           |
+----+-----------------------------------+
| 1  | adas                              |
| 2  | //randomly dispersed empty string |
| 3  | sdgsdf                            |
| 4  | sdfs                              |
| 5  | //randomly dispersed empty string |
| 6  | fdhgff                            |
+----+-----------------------------------+
....
Run Code Online (Sandbox Code Playgroud)

请注意,不得触摸列中的原始数据(设置为空的数据除外).

zer*_*kms 5

UPDATE mytable
SET mycolumn = ''
WHERE RAND() > 0.5
Run Code Online (Sandbox Code Playgroud)

  • 这看起来更快. (2认同)