我想在PL / SQL中编写一个脚本来成对转换十六进制数字的字节顺序
离。 A1B2C3D4
应该成为D4C3B2A1
请问我能帮助我使用哪种功能或脚本。
答案 0 :(得分:3)
UTL_RAW
包有一个方便的REVERSE
function:
select utl_raw.reverse('A1B2C3D4') from dual;
UTL_RAW.REVERSE('A1B2C3D4')
---------------------------
D4C3B2A1
这会为您提供RAW
值,并且我在该示例中执行从字符串到RAW
的隐式转换,因为我不知道您的数据类型是什么?重新开始。
您可以展开此内容,以VARCHAR2
与HEXTORAW
function明确转换:
select utl_raw.reverse(hextoraw('A1B2C3D4')) from dual;
UTL_RAW.REVERSE(HEXTORAW('A1B2C3D4'))
-------------------------------------
D4C3B2A1
并使用RAWTOHEX
function返回VARCHAR2
:
select rawtohex(utl_raw.reverse(hextoraw('A1B2C3D4'))) from dual;
RAWTOHEX(UTL_RAW.REVERSE(HEXTORAW('A1B2C3D4')))
-----------------------------------------------
D4C3B2A1
......具体取决于你需要的东西。