Mysql 十进制类型性能按位数设置

Mysql decimal type performance by digits setting

我阅读了关于 Mysql 小数类型大小的在线文档:

剩余位数 字节数
0 0
1–2 1
3–4 2
5–6 3
7–9 4

所以我们知道数字7~9在磁盘中占用相同的大小,但是性能如何呢? 7 位数是否与 9 位数相同或更好?

DECIMAL 由假设每个字节打包 2 位数字或每个 32 位整数打包 9 位数字的库实现。 7 个数字放不下 3 个字节; 9 将适合 4 个字节。该库最多允许 64(或可能只有 63)位数字——一个相当大的值。

DECIMAL(M,N)中,数据是根据M和N来限制的,限制在7还是9应该对性能没有影响。即使是这样,与更大的问题(例如获取行)相比,工作量也很小。

提示:一个简单的经验法则:DECIMAL(M,N) 占用 大约 M/2 个字节。

DECIMAL(11,2) for money 在 5 个字节中最多允许十亿 dollars/Euros/etc。我看不出使用 (10,2) 或 (9,2) 有什么好处,每个也是 5 个字节。