跳到主要内容

FORMAT_NUMBER

描述

FORMAT_NUMBER 函数用于将数值格式化为带单位符号的字符串。支持的单位有:K(千)、M(百万)、B(十亿)、T(万亿)、Q(千万亿)。

语法

FORMAT_NUMBER(<val>)

参数

参数说明
<val>需要被格式化的数值。类型:DOUBLE

返回值

返回 VARCHAR 类型,为带单位符号的格式化字符串。

特殊情况:

  • 如果参数为 NULL,返回 NULL
  • 小于1000的数字不添加单位,直接返回数字
  • 单位转换规则:
    • K:千(1,000)
    • M:百万(1,000,000)
    • B:十亿(1,000,000,000)
    • T:万亿(1,000,000,000,000)
    • Q:千万亿(1,000,000,000,000,000)

示例

  1. 基本用法:千位数(K)
SELECT format_number(1500);
+---------------------+
| format_number(1500) |
+---------------------+
| 1.50K |
+---------------------+
  1. 百万(M)
SELECT format_number(5000000);
+------------------------+
| format_number(5000000) |
+------------------------+
| 5.00M |
+------------------------+
  1. 小于千的数字
SELECT format_number(999);
+----------------------------------+
| format_number(cast(999 as DOUBLE))|
+----------------------------------+
| 999 |
+----------------------------------+
  1. NULL 值处理
SELECT format_number(NULL);
+---------------------+
| format_number(NULL) |
+---------------------+
| NULL |
+---------------------+