base36
Base36编码解码扩展
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
pg_base36 | 1.0.0 | FUNC | MIT | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 4800 | base36 | 否 | 是 | 否 | 是 | 否 | 否 | - |
| 相关扩展 | base62 pg_base58 pg_polyline uri pg_curl url_encode pg_rewrite sepgsql |
|---|
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 1.0.0 | 1817161514 | pg_base36 | - |
| RPM | PIGSTY | 1.0.0 | 1817161514 | pg_base36_$v | - |
| DEB | PIGSTY | 1.0.0 | 1817161514 | postgresql-$v-base36 | - |
构建
您可以使用 pig build 命令构建 pg_base36 扩展的 RPM / DEB 包:
pig build pkg pg_base36 # 构建 RPM / DEB 包
安装
您可以直接安装 pg_base36 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
pig repo add pgsql -u # 添加仓库并更新缓存
使用 pig 或者是 apt/yum/dnf 安装扩展:
pig install pg_base36; # 当前活跃 PG 版本安装
pig ext install -y pg_base36 -v 18 # PG 18
pig ext install -y pg_base36 -v 17 # PG 17
pig ext install -y pg_base36 -v 16 # PG 16
pig ext install -y pg_base36 -v 15 # PG 15
pig ext install -y pg_base36 -v 14 # PG 14
dnf install -y pg_base36_18 # PG 18
dnf install -y pg_base36_17 # PG 17
dnf install -y pg_base36_16 # PG 16
dnf install -y pg_base36_15 # PG 15
dnf install -y pg_base36_14 # PG 14
apt install -y postgresql-18-base36 # PG 18
apt install -y postgresql-17-base36 # PG 17
apt install -y postgresql-16-base36 # PG 16
apt install -y postgresql-15-base36 # PG 15
apt install -y postgresql-14-base36 # PG 14
创建扩展:
CREATE EXTENSION base36;
用法
提供使用 base36 方案进行编码和解码的数据类型,支持 base36 与整数类型之间的转换。
CREATE EXTENSION base36;
类型
| 类型 | 存储 | 最大字符串长度 | 最大数值 |
|---|---|---|---|
base36 | 4 字节(int) | 6 字符 | 2,147,483,647 |
bigbase36 | 8 字节(bigint) | 13 字符 | 9,223,372,036,854,775,807 |
示例
-- 将整数编码为 base36
SELECT 1234567::base36; -- 'qglj'
-- 将 base36 解码为整数
SELECT 'qglj'::base36::int; -- 1234567
-- 用于更大数值的 bigbase36
SELECT 9223372036854775807::bigbase36; -- 'i1y004og0svr'
SELECT 'i1y004og0svr'::bigbase36::bigint; -- 9223372036854775807