如果您在查询分析数据时需要区分更细维度的数据类型,您可以在查询分析语句中使用类型转换函数转换字段值的数据类型。
函数格式
- 使用cast()函数转换数据类型时,如果某个值转换失败,将终止整个查询。cast()函数格式如下:
cast(key AS type)
cast(value AS type)
- 使用try_cast()函数转换数据类型时,如果某个值转换失败,该值返回NULL,并跳过该值继续处理。try_cast()函数格式如下:
try_cast(key AS type)
try_cast(value AS type)
参数 | 说明 |
---|---|
key | 日志字段名。配置为某字段名,则表示将该字段所有的值都转换为指定的数据类型。 |
value | 日志字段值。配置为某字段值,则表示将该值转换为指定的数据类型。 |
type | SQL数据类型,可配置为bigint、varchar、double、varchar、timestamp、decimal、array和map。
索引数据类型和SQL数据类型的映射关系,请参见附录:数据类型映射关系。 |
示例
- 将数字123转换为varchar格式,分析语法如下所示:
cast(123 AS varchar)
- 将uid字段的所有值转换为varchar格式,分析语法如下所示:
cast(uid AS varchar)
附录:数据类型映射关系
索引数据类型和SQL数据类型的对应关系如下表所示:
索引的数据类型 | SQL的数据类型 |
---|---|
long | bigint |
text | varchar |
double | double |
json | varchar |