VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

FORMAT

功能描述

FORMAT函数将数字四舍五入到指定的小数位数,并按照#,###,###.##之类的格式进行格式化,然后将结果作为字符串返回。

注意事项

  • 该功能仅在数据库兼容模式为MySQL时支持(即数据库实例初始化时指定DBCOMPATIBILITY='B')。

  • 使用FORMAT函数需要将GUC参数[b_compatibility_mode]()设置为TRUE。

  • 如果参数val为 NULL,FORMA函数将会返回 NULL。

语法格式

FORMAT(val number, dec_num int [,locale string])

参数说明

  • val

    需要格式化的数字。

  • dec_num

    要保留的小数位数。

    保留的小数位数最多为32位,若dec_num大于32,则以保留32位小数返回。若dec_num为0,则返回内容无小数点及小数部分数字。

  • locale string

    可选参数,可以根据locale指定返回内容的小数点及千位分隔符的格式。如果没有指定第三个参数,或第三个参数值非法,则使用默认值'en_US'。

示例

1、设置GUC参数b_compatibility_mode并查询。

SET b_compatibility_mode = TRUE;
show b_compatibility_mode;

返回结果为:

 b_compatibility_mode
----------------------
 on
(1 row)

2、调用FORMAT函数。

SELECT format(1234.4567,2);
SELECT format(1234.5,4);
SELECT format(1234.5,0);
SELECT format(1234.5,2,'de_DE');

返回结果为:

  format
----------
 1,234.46
(1 row)

   format
------------
 1,234.5000
(1 row)

 format
--------
 1,235
(1 row)

  format
----------
 1.234,50
(1 row)

3、清理环境。

SET b_compatibility_mode = FALSE;