按照指定的format格式说明符,将输入的不同类型数据转换为格式化的字符串表示。
命令格式
STRING FORMAT_STRING(STRING <format>, BIGINT|INT|SMALLINT|STRING|ARRAY <value>)
参数说明
format:必填。STRING类型。格式说明符。当前支持的取值有:
%d
:进行数字格式化,输出简单整数格式。%'d
:进行数字格式化,输出添加千位分隔符的整数格式。%0<number>d
:进行数字格式化,输出宽度为<number>,左侧由零填充的的整数格式。%s
:进行字符串格式化。%t
:将任何类型(如ARRAY)转换为STRING类型,返回对应的字符串值。
value:必填。BIGINT、INT、SMALLINT、STRING或ARRAY数据类型。要格式化的值。
返回值说明
返回STRING类型。当format或value为NULL时,返回报错。
使用示例
-- 返回 12,345,678 -- 显示带千位分隔的整数
SELECT FORMAT_STRING("%'d", 12345678L);
-- 返回 12345678 -- 显示为普通整数
SELECT FORMAT_STRING("%d", 12345678L);
-- 返回 hello,Tom -- 格式化字符串
SELECT FORMAT_STRING('hello,%s', 'Tom');
-- 返回 00123 -- 整数左侧补零至5位
SELECT FORMAT_STRING('%05d', 123);
-- 返回 [1,2,3,4] -- 将数组转换为字符串格式输出
WITH DATA AS (SELECT ARRAY(1, 2, 3, 4) AS numbers)
SELECT FORMAT_STRING('%t', numbers) AS formatted_numbers FROM DATA;
相关函数
FORMAT_STRING函数属于字符串函数,更多查找字符串、转换字符串格式的相关函数请参见字符串函数。
该文章对您有帮助吗?