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)
示例
- 基本用法:千位数(K)
SELECT format_number(1500);
+---------------------+
| format_number(1500) |
+---------------------+
| 1.50K |
+---------------------+
- 百万(M)
SELECT format_number(5000000);
+------------------------+
| format_number(5000000) |
+------------------------+
| 5.00M |
+------------------------+
- 小于千的数字
SELECT format_number(999);
+----------------------------------+
| format_number(cast(999 as DOUBLE))|
+----------------------------------+
| 999 |
+----------------------------------+
- NULL 值处理
SELECT format_number(NULL);
+---------------------+
| format_number(NULL) |
+---------------------+
| NULL |
+---------------------+