Sql server SQL Server中字符数较少的字符串的二进制GUID

Sql server SQL Server中字符数较少的字符串的二进制GUID,sql-server,text,binary,guid,varchar,Sql Server,Text,Binary,Guid,Varchar,按照此处的程序: 使用这行代码: REPLACE(CAST([ResultsSetID] AS VARCHAR), '0x', '') AS TrimmedID 我无法得到上述代码的标准字母和数字的结果 目的是返回不带0x前缀的GUID 相反,输出是用其他符号表示的,这是不需要的,希望得到帮助 感谢您的帮助@SeanLange和@ZLK我现在能够使用以下代码使其正常工作: (REPLACE(convert(varchar(max),[ResultsSetID],1),'0x','' ) )

按照此处的程序:

使用这行代码:

REPLACE(CAST([ResultsSetID] AS VARCHAR), '0x', '') AS TrimmedID
我无法得到上述代码的标准字母和数字的结果

目的是返回不带
0x
前缀的GUID

相反,输出是用其他符号表示的,这是不需要的,希望得到帮助


感谢您的帮助@SeanLange和@ZLK我现在能够使用以下代码使其正常工作:

(REPLACE(convert(varchar(max),[ResultsSetID],1),'0x','' ) ) as TrimmedID

您没有使用在该链接中找到的代码。这里有一个没有长度的varchar。因此,它将使用默认长度30,该长度太短。除了@SeanLange提到的内容外,您还需要使用
CONVERT
并指定一个附加参数。e、 g.
CONVERT(VARCHAR(32),ResultsSetID,1)
。请注意页面中关于cast/convert:Side note的这一部分,通常最好避免
varchar(max)
。您可以在这里使用
varchar(34)
。谢谢你的提示@AaronDietz我会记住的!