如何在PostgreSQL中生成自定义格式的ID?

如何在PostgreSQL中生成自定义格式的ID?

postgresql生成自定义id格式

在postgresql中,我们通常使用自增主键来生成唯一的id。然而,有时我们需要生成具有特定格式的id,例如前缀字符串或随机字符。

那么,如何生成这样的id呢?

前缀字符串+自增长数字

可以使用serial数据类型和concat()函数来实现:

create table your_table_name (     id text primary key default concat('bg-', lpad(serial, 16, '0')) );

sql语句将生成类似于以下格式的id:

bg-0000000000000001 bg-0000000000000002 ...

前缀字符串+随机字符

可以使用gensalt()函数和substring()函数来生成:

create table your_table_name (     id text primary key default concat('bg-', substring(gensalt('md5'), 3, 10)) );

sql语句将生成类似于以下格式的id:

bg-000857Y3EX bg-00085ERU8y ...

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享