gpt4 book ai didi

sql - 在 DB2 上将 HEX 值转换为 CHAR

转载 作者:行者123 更新时间:2023-12-04 22:24:40 39 4
gpt4 key购买 nike

与来自 SQL Server 的数据复制有关至 DB2我有以下问题:

DB2我有一个包含(为简单起见)两列的表格:COL1COL2 .
COL1定义为 CHAR(20) . COL2定义为 CHAR(10) .
COL1通过将字符串转换为十六进制从 SQL 复制,例如"abcdefghij""6162636465666768696A""1111111111""31313131313131313131"通过使用以下 SQL 查询:

CONVERT(char(20), cast(@InputString as binary) 2)

哪里 @InputString将是 "abedefghij" .

换句话说, COL1 包含十六进制值,但作为字符串(如果措辞不正确,请见谅)。

我需要将十六进制值转换回字符串并将此值放入 COL2 .

SQL 查询应该是什么 DB2做转换?我知道如何在 SQL Server 上执行此操作,但不在 DB2 .

注意:十六进制值没有以 "0x" 为前缀的原因是因为样式 2 用于 CONVERT陈述。

最佳答案

select hex('A') from sysibm.sysdummy1; 
返回 41。
select x'41' from sysibm.sysdummy1;
给你'A'。所以你可以把它放在 for 中循环并遍历每对十六进制字符以到达原始字符串。或者您可以编写自己的 unhex 函数。
摘自 dbforums.com/db2/1627076-display-hex-columns.html(2020 年 11 月编辑:原始源链接现在是垃圾邮件站点)

关于sql - 在 DB2 上将 HEX 值转换为 CHAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7913300/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com