删除十六进制列中的填充零

Mat*_*hes 1 sql t-sql hex

我在TSQL中有一个包含十六进制列的数据库.但是,这些值用零填充以填充列.

我需要删除这些零,因此我有十六进制字符串.问题是我不能只删除一对零,因为字符串可能在中间有零.

我有一种感觉,我需要将其转换为十进制,然后返回或其他东西,但我尝试的一切产生奇怪的结果.

数据库中的列如下所示:

1EBC67E6000000
6B1FE9C7830000
C700DBBF000000
Run Code Online (Sandbox Code Playgroud)

这些值是不同的长度,并且全部用零对填充.

任何想法都会好!

mat*_*mot 7

也许这对你有好处:

Select  replace(rtrim(replace('C700DBBF000000','0',' ')),' ','0');
Run Code Online (Sandbox Code Playgroud)

  • 不,我将0替换为'',最后只删除了这个。之后,我再次将字符串中的空格替换为0。在managment studio或数据库中尝试此代码。很好。 (2认同)