gpt4 book ai didi

mysql 、 bigint 或 decimal 用于存储 > 32 位值但小于 64 位

转载 作者:可可西里 更新时间:2023-11-01 07:33:44 24 4
gpt4 key购买 nike

我们需要存储最大为 2^38 的整数值。有什么理由使用 decimal(12,0) 还是我们应该使用 bigint?

最佳答案

在我看来,bigint 会更好。它存储为一个整数,MySQL 无需任何转换就可以 native 理解它,因此(我想)操作起来会更快。因此,如果您使用 bigint,您应该期望 MySQL 的效率稍微高一些。

根据 this manual page ,您号码的前 9 位数字将存储在一个四字节 block 中,其余数字(您最多需要 12 位)将存储在一个两字节 block 中。这意味着您的列每行占用 6 个字节,而 bigint 则为 8 个字节。我建议除非 a) 你要存储一个真正令人讨厌的行数,这样占用的空间是一个严重的问题,并且 b) 你将需要很少查询有问题的数据,你应该使用 bigint。

关于mysql 、 bigint 或 decimal 用于存储 > 32 位值但小于 64 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3696377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com