【发布时间】:2016-02-02 20:47:22
【问题描述】:
我正在尝试转换一个非常大的数字的十六进制字符串 到 NUMERIC 列
CREATE OR REPLACE FUNCTION hex_to_int(hexval varchar) RETURNS NUMERIC AS $$
DECLARE
result NUMERIC;
BEGIN
EXECUTE 'SELECT x''' || hexval || '''::NUMERIC(40,0)' INTO result;
RETURN result;
END;
$$
LANGUAGE 'plpgsql' IMMUTABLE STRICT;
我正在尝试这样做:
select hex_to_int(tx.value) from internal_transaction tx
我得到的错误是:
[42846] ERROR: cannot cast type bit to numeric Where: PL/pgSQL function hex_to_int(character varying) line 5 at EXECUTE statement
【问题讨论】:
标签: postgresql types casting hex