转换函数采用各种方式对数据进行转换,例如转换类型,使用 base64 编码和压缩。
cast(col, "bigint")
将值从一种数据类型转换为另一种数据类型。支持的类型包括:bigint,float,string,boolean,bytea 和 datetime。
使用 cast 函数转换到 datetime 类型时,转换规则如下:
github.com/jinzhu/now
的 TimeFormatsconvert_tz(col, "Asia/Shanghai")
将时间数值转换成对应时区的时间。时区参数格式参照 IANA 时区数据库,默认值为 UTC
,设置为 Local
则使用系统时区。
注意:在基于 alpine 的环境里使用该函数,需要确保已经正确安装(
apk add tzdata
)了时区数据。
chr(col)
返回与给定 Int 参数对应的 ASCII 字符
encode(col, "base64")
根据编码方案将数据编码为其字符串表示形式。目前,只支持 "base64" 编码类型。
decode(col, "base64")
解码输入字符串。目前,只支持 "base64" 类型。
trunc(dec, int)
将第一个参数截断为第二个参数指定的小数位数。 如果第二个参数小于零,则将其设置为零。 如果第二个参数大于34,则将其设置为34。从结果中去除尾随零。
compress(input, "zlib")
压缩输入的字符串或二进制值。目前支持 'zlib', 'gzip', 'flate' 和 'zstd' 压缩算法。
decompress(input, "zlib")
解压缩输入的字符串或二进制值。目前支持 'zlib', 'gzip', 'flate' 和 'zstd' 压缩算法。
hex2dec(col)
返回给定16进制字符串的10进制数值, 参数的数据类型需要是 string, 如果参数是 "0x10"
或 "10"
,则将其转换为 16
。
dec2hex(col)
返回给定 Int 类型10进制的16进制字符串,如果参数为 16
,则将其转换为 "0x10"
。