MySQL生成一个唯一ID

2021/9/23 19:42:46

本文主要是介绍MySQL生成一个唯一ID,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

毫秒时间戳ID

SELECT SUBSTR(date_format(NOW(3), '%Y%m%d%H%i%s%f'), 1, 17) as uniqueid
  • SUBSTR(str, pos, len) 函数的参数 pos 的坐标从 1 开始;
  • %Y 四位数字表示的年份;而 %y 两位数字表示的年份;
  • %m 两位数字表示的月份(01, 02, ..., 12);
  • %d 两位数字表示月中的天数(00, 01,..., 31);
  • %f 可以获得6位的微秒 microsecond;
  • 年份4位,月份2位,天数2位,时分秒6位,毫秒保留3位,总位数为17位;

参考文档:
详解mysql 获取当前日期及格式化

mysql 时间类型精确到毫秒、微秒及其处理

随机数字ID

SELECT CONCAT(date_format(NOW(), '%Y%m%d%H'), LPAD(FLOOR(RAND()*10000000),7,0)) as idNumber

随机UUID

select replace(uuid(),'-','') as uuid;

参考文档:MySQL生成UUID



这篇关于MySQL生成一个唯一ID的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程