MySQL SQL语句 生成32位 UUID

在运营中,有时会碰到线下下单,线下注册,需要在数据库对其数据批量生成导入的场景。

此时如果你的数据表主键并不是Int整型自动递增而是32位的UUID这种情况该怎么办呢?

 

MySQL 其实实现了UUID,并为我们提供UUID()函数。 用法如下:

 

mysql> SELECT UUID();
mysql> c2cb8f66-351f-11e7-b3ed-00163e0429b6
mysql> SELECT REPLACE(UUID(), '-', '');  #将'-'符号替换掉
mysql> 45c87fa0352211e78d40d4977a9ea871
在 MySQL 的 UUID() 函数中,前三组数字从时间戳中生成,第四组数字暂时保持时间戳的唯一性,
第五组数字是一个 IEEE 802 节点标点值,保证空间唯一。使用 UUID() 函数,可以生成时间、空间上都独一无二的值。
据说只要是使用了 UUID,都不可能看到两个重复的 UUID 值。
posted on 2018-03-14 16:28  o_0的园子  阅读(38741)  评论(0编辑  收藏  举报