在SQL中将十六进制转换为字符串

6

我有一个表格中的一列是十六进制值,我想将其转换为字符串,请问该怎么做?

我尝试过以下方法:

 SELECT
CONVERT(Nvarchar(max), '0x07FD010200000006730A1308320000008990000006730A1308320700008990000002FF006766666666666611FF');

但是这个不起作用。

在这里,我想将单引号中给定的值转换。请帮忙。


对于您所给出的示例,您知道字符串值应该是什么吗? - Ben Thul
2个回答

6

请查看此链接以获取如何实现此操作的详细信息。

尝试这个

SELECT
  CONVERT(varbinary(64), '0x16004D616E75623232', 1),
  CONVERT(varchar(64), 0x16004D616E75623232, 1),
  CONVERT(varchar(64), 0x16004D616E75623232, 2);
GO

顺便问一下,你正在使用哪个SQL服务器?


我已经尝试过这个,但结果却是一个ý符号。 - Mohini Jamdade
你试过我上面写的代码片段了吗? - user5591376
是的,我尝试过了,但结果仍然是相同的十六进制数。 - Mohini Jamdade
我有一个十六进制数,想将其转换为字符串。 - Mohini Jamdade
这对我有用,只要确保在前面添加0x,否则你会遇到上面评论中的问题。 - Chris Owens

1
您可以使用这个脚本:
SELECT CAST(0x54 as varchar(max))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接