在不符合 ANSI 标准的数据库中,DECIMAL(p) 数据类型是与 FLOAT 和 SMALLFLOAT 类似的浮点数据类型。重要区别是指定它保留多少个有效位。写为 p 的精度范围为 1 到 32,也就是从比 SMALLFLOAT 低的精度到 FLOAT 精度的两倍。DECIMAL(p) 数的量级范围从 10-130 到 10124。DECIMAL(p) 数使用的存储空间取决于其精度;它们占用 1 + p/2 个字节(如果有必要的话,上舍入到整数)。
然而,在符合 ANSI 标准的数据库中,DECIMAL(p) 是小数位为零的定点数据类型,所以如果数据值有 p 或更多有效数字,那么 DECIMAL(p) 始终存储精度为 p 的整数值。任何小数部分都将截断。
不要将 DECIMAL(p) 数据类型与下一节说明的 DECIMAL(p,s) 数据类型相混淆。DECIMAL(p) 数据类型只指定了精度。