【发布时间】:2011-08-07 01:23:10
【问题描述】:
Oracle 中的精度和规模有什么区别?在教程中,他们通常将 scale 留空,并在创建主键时将精度设置为 6。
精度和比例代表什么?
【问题讨论】:
Oracle 中的精度和规模有什么区别?在教程中,他们通常将 scale 留空,并在创建主键时将精度设置为 6。
精度和比例代表什么?
【问题讨论】:
精度 4,比例 2:99.99
精度 10,刻度 0:9999999999
精度 8,比例 3:99999.999
精度 5,比例 -3:99999000
【讨论】:
精度是有效位数。 Oracle 保证数字的可移植性,精度范围为 1 到 38。
Scale 是小数点右侧(正)或左侧(负)的位数 观点。范围可以从 -84 到 127。
在您的情况下,精度为 6 的 ID 意味着它不会接受具有 7 个或更多有效数字的数字。
参考:
http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT1832
该页面还包含一些示例,可让您了解精度和规模。
【讨论】:
Precision是总位数,可以在1到38之间。
Scale是小数点后的位数,也可以设置舍入为负数。
示例:
号码(7,5):12.12345
号码(5,0):12345
更多详情请访问 ORACLE 网站:
https://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT1832
【讨论】:
也许更清楚:
注意精度是总位数,包括小数位
NUMBER(精度、比例)
8 级精度,3 级:87654.321
精度 5,比例 3:54.321
精度 5,比例 1:5432.1
精度 5,刻度 0:54321
精度 5,比例 -1:54320
精度 5,比例 -3:54000
【讨论】:
precision:它是小数点之前或之后的总位数。 例如:123.456 这里的精度是 6。
Scale:小数点后的总位数。 例如:123.456 这里是 Scaleis 3
【讨论】:
如果值为 9999.988 且精度为 4,刻度为 2,则表示 9999(表示精度).99(刻度为 2,因此 .988 舍入为 .99)
如果值为 9999.9887,精度为 4,比例为 2,则表示 9999.99
【讨论】: