查看内容

控制查询输出小数位数

  • 2020-02-25 00:50
  • 数据库知识
  • Views

分享一个sql函数,它可以很好的控制查询出来的结果的小数位数的显示,有需要的朋友可以参考一下哦。

decimal(18,0)18是定点精度,0是小数位数。decimal(a,b)a指定指定小数点左边和右边可以存储的十进制数字的最大个数,最大精度38。b指定小数点右边可以存储的十进制数字的最大个数。小数位数必须是从 0 到 a之间的值。默认小数位数是 0。

实例

代码如下复制代码

select cast(12.347343 asdecimal(18,2))

输出

12.35

decimal[ (*p[ ,s] )] 和 numeric[ (p[ ,s*] )]

固定精度和小数位数。使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。decimal 的 ISO 同义词为 dec 和 dec(p, s)。numeric 在功能上等价于 decimal。

p

最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数。该精度必须是从 1 到最大精度 38 之间的值。默认精度为 18。

s

小数点右边可以存储的十进制数字的最大位数。小数位数必须是从 0 到 p 之间的值。仅在指定精度后才可以指定小数位数。默认的小数位数为 0;因此,0 = s = p。最大存储大小基于精度而变化。

精度

存储字节数

1 - 9

5

10-19

9

20-28

13

29-38

17