提问人:yingw 提问时间:11/8/2023 更新时间:11/8/2023 访问量:46
Postgres 中的 int128 或 16 字节整数
int128 or 16 byte integers in postgres
答:
2赞
The Impaler
11/8/2023
#1
可以使用 DECIMAL 类型存储 128 位整数。
例如:
create table t (p int , value decimal(39),
check (value between -170141183460469231731687303715884105728::decimal(39)
and 170141183460469231731687303715884105727::decimal(39))
);
结果:
p value
----- -----------------------------------------
15 32768
16 65536
31 2147483648
32 4294967296
63 9223372036854775808
64 18446744073709551616
127 170141183460469231731687303715884105727
请参阅 db<>fiddle 中的运行示例。
请注意,最后一次插入失败,因为该值比 128 位精度高出一个单位。
评论