Presto提供给了如下几个显式类型转换函数:

  • CAST

    显式的进行类型转换,只是在出现转换错误的时候抛出异常。使用方法如下:

    CAST(value AS type) -> value1:type
    
  • TRY_CAST

    CAST功能相同,只是在出现转换错误的时候,返回NULL。使用方法如下:

    TRY_CAST(value AS TYPE) -> value1:TYPE | NULL
    
  • TYPEOF

    获取参数或表达式值的类型字符串,使用方法如下:

    TYPEOF(expression) -> type:VARCHAR
    

    示例:

    SELECT TYPEOF(123); -- integer
    SELECT TYPEOF('cat'); -- varchar(3)
    SELECT TYPEOF(cos(2) + 1.5); -- double