mysql生成16位uuid
时间: 2023-09-10 14:14:59 浏览: 149
activerecord-mysql-uuid-column:ActiveRecord MySQL 适配器的真实 UUID 列
MySQL 中没有原生的 UUID 生成函数,但可以通过以下两种方法生成 16 位 UUID:
1. 使用 UUID_SHORT() 函数
UUID_SHORT() 函数可以生成一个 16 位的 UUID,但它只是一个伪随机数而不是真正的 UUID,因此可能存在碰撞风险。
```sql
SELECT UUID_SHORT();
```
2. 使用 CONCAT() 和 UNHEX() 函数
可以使用 CONCAT() 和 UNHEX() 函数将两个 8 位的 UUID 合并为一个 16 位的 UUID。这种方法生成的 UUID 是真正的 UUID。
```sql
SELECT HEX(CONCAT(UNHEX(SUBSTR(UUID(),1,8)),UNHEX(SUBSTR(UUID(),10,8))));
```
阅读全文