全部产品
Search
文档中心

实时计算Flink版:CONV

更新时间:Aug 14, 2023

本文为您介绍如何使用CONV函数,对数字或字符类型的数值进行进制转换。

使用限制

  • 仅实时计算引擎VVR 3.0.0及以上版本支持CONV函数。

  • CONV函数精度为64位。

语法

VARCHAR CONV(BIGINT number, INT FROM_BASE, INT TO_BASE)
or 
VARCHAR CONV(VARCHAR number, INT FROM_BASE, INT TO_BASE)

入参

参数

数据类型

说明

number

BIGINT、VARCHAR

要转换的数字,数据类型为字符串或数字。

说明

当number为NULL或非法字符时,结果返回为NULL。

FROM_BASE

INT

数字的当前进制数。取值范围[2, 36]

TO_BASE

INT

要转换的目标进制数。可以为正数,取值范围[2, 36];也可以为负数,取值范围[-36, -2]

示例

  • 测试数据

    id(INT)

    x(BIGINT)

    y (VARCHAR)

    1

    12

    '12'

    2

    10

    '10'

    3

    0

    'test'

    4

    NULL

    NULL

  • 测试语句

    SELECT  id, conv(x, 10, 16) as var1, conv(y, 10, 2) as var2
    FROM T1;
  • 测试结果

    id(INT)

    var1(VARCHAR)

    var2(VARCHAR)

    1

    C

    1100

    2

    A

    1010

    3

    0

    NULL

    4

    NULL

    NULL