更新时间:2026-07-14 GMT+08:00
分享

类型转换函数

本文介绍类型转换函数的语法规则,包括参数解释、函数示例等。

函数列表

表1 类型转换函数

函数

描述

cast函数

将值从一种数据类型转换为另一种数据类型,并将数据类型提供给动态参数。如果某个值转换失败,终止查询操作并抛出异常。

try_cast 函数

将值从一种数据类型转换为另一种数据类型,并将数据类型提供给动态参数。如果某个值转换失败,捕获异常并使该值返回null。

typeof 函数

返回指定字段的数据类型。

cast函数

将值从一种数据类型转换为另一种数据类型,并将数据类型提供给动态参数。

在允许表达式的任何地方都允许使用转换表达式

语法:CAST(Expression as Datatype)

表2 参数说明

参数名称

描述

类型

是否必选

expression

源类型的表达式。

任意

Datatype

目标类型。

SQL数据类型,可选值为bigint、varchar、double、double precision、boolean、timestamp、decimal、integer、char、date。

表3 索引数据类型和SQL数据类型的对应关系

索引的数据类型

SQL的数据类型

long

bigint

string

varchar

float

double或double precision

返回值类型:目标数据类型。

示例:select cast(time as date)

表4 查询分析结果

类型

查询语句

返回结果

场景

cast(time as date)

2023-08-31 23:11:17.000

try_cast 函数

将值从一种数据类型转换为另一种数据类型,并将数据类型提供给动态参数。如果某个值转换失败,捕获异常并使该值返回null。

语法:TRY_CAST(Expression as Datatype)

要将表达式转换到的数据类型是目标类型。要从中转换的表达式的数据类型是源类型。

表5 参数说明

参数名称

描述

类型

是否必选

expression

源类型的表达式。

任意

Datatype

目标类型。

SQL数据类型,可选值为bigint、varchar、double、double precision、boolean、timestamp、decimal、integer、char、date。

返回值类型:目标数据类型。

示例:select try_cast(time as date)

表6 查询分析结果

类型

场景

查询语句

try_cast(time as date)

返回结果

null

typeof 函数

返回指定字段或表达式结果的数据类型。

语法:typeof(expression)

表7 参数说明

参数名称

描述

类型

是否必选

expression

要进行结果类型判断的字段或表达式

任意

返回值类型:目标数据类型。

示例:select typeof(from_unixtime(__time)) as t

表8 查询分析结果

类型

场景

查询语句

typeof(from_unixtime(__time))

返回结果

timestamp(3) with time zone

相关文档