HEX_TO_INTEGER

将给定的 VARCHAR 十六进制表示方式转换为 INTEGER 值。

Vertica 按如下方式完成此转换:

  • 如果输入中未指定,则添加 0x 前缀

  • 将 VARCHAR 字符串转换为 NUMERIC

  • 将 NUMERIC 转换为 INTEGER

行为类型

不可变

语法

HEX_TO_INTEGER ( [ 0x ] expression )

参数

expression
VARCHAR 是要转换的字符串。
0x
为可选前缀。

示例

您可以输入带有或不带有 Ox 前缀的字符串。例如:

=> SELECT HEX_TO_INTEGER ('0aedc')
         AS hex1,HEX_TO_INTEGER ('aedc') AS hex2;
 hex1  | hex2
-------+-------
 44764 | 44764
(1 row)

如果向函数传递无效十六进制值,Vertica 将返回 invalid input syntax 错误;例如:

=> SELECT HEX_TO_INTEGER ('0xffgf');
ERROR 3691:  Invalid input syntax for numeric: "0xffgf"

另请参阅