如果您在查询分析数据时需要区分更细维度的数据类型,您可以在查询分析语句中使用类型转换函数转换字段值的数据类型。

函数格式

说明 日志中可能有脏数据,建议使用try_cast()函数,避免因脏数据造成整个查询分析失败。
  • 使用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