我想知道SQL中是否有一种简单的方法将整数转换为二进制表示形式,然后将其存储为varchar。

例如,将5转换为“101”并存储为varchar。

最佳答案

可以将以下代码编码为一个函数。您需要删减前导零以符合您的问题要求。

declare @intvalue int
set @intvalue=5

declare @vsresult varchar(64)
declare @inti int
select @inti = 64, @vsresult = ''
while @inti>0
  begin
    select @vsresult=convert(char(1), @intvalue % 2)+@vsresult
    select @intvalue = convert(int, (@intvalue / 2)), @inti=@inti-1
  end
select @vsresult

关于sql - SQL Server将整数转换为二进制字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/127116/

10-11 04:31