我有一个具有80K行的表,其中包含导入的数据。表的结构如下:
order_line_items
- id
- order_id
- product_id
- quantity
- price
- uuid 在导入时,导入了order_id、product_id、quantity和price,但uuid字段保留为空。
是否有办法使用mysql的UUID()函数将uuid批量添加到表的每一行?我可以使用脚本循环遍历每一行并更新它,但是如果有MySQL解决方案,这将是最快的。
发布于 2015-12-21 17:37:05
每次对uuid()的调用都返回不同的唯一值。
所以很简单
UPDATE order_line_items SET uuid = uuid();应该为每个uuid字段分配一个唯一的值。
编辑2022年3月
请注意,使用此方法时,uuid中只会更改几个字符,这使得它们看起来看起来是相同的,但实际上它们都是不同的。
*2020年6月编辑*
使用@RickJames (参见注释),我们试图理解一些人在运行上面的Update命令后如何获得相同的UUID (它们应该是不同的)。
Update,如下图所示,UUID()是一个MySQL函数(因此是())36字符还请参阅DBA上的这个相关问题。
https://stackoverflow.com/questions/34401248
复制相似问题