【问题标题】:SQL Remove all leading zerosSQL 删除所有前导零
【发布时间】:2021-02-19 03:44:24
【问题描述】:

我的联接返回 null,因为我无法删除前导零。基本上,我正在尝试用src.Policy_Number 替换pol.Policy_Number 以获得大量策略。有没有办法可以删除ON 语句中src.Policy_Number 的前导0?我认为需要填充,但我是 SQL 新手,因此非常感谢任何帮助。 pol 政策编号总是等于 src 政策编号,如果它不是 pol 中的前导 0 这不是重复的。我不是在寻找select。我需要在 ON 语句旁边添加填充,以便删除 src.Policy_Number 中的任何前导 0,以便 JOIN 可以返回行。请不要重复关闭问题

 UPDATE pol
SET pol.Policy_Number = src.Policy_Number
FROM Policy_Table pol
INNER JOIN SourceTable src
 on  pol.Policy_Number =src.Policy_Number--00000000000000ABCD200,0000000000000EFT200
 Where src.Policy_Number IN('ABCD200','EFT200')

【问题讨论】:

  • 这不是重复的。我不是在寻找select。我需要在ON 语句旁边添加填充,以便删除src.Policy_Number 中的任何前导0,以便JOIN 可以返回行。请不要重复关闭问题。

标签: sql sql-server-2017 padleft


【解决方案1】:
 UPDATE pol
SET pol.Policy_Number = src.Policy_Number
FROM Policy_Table pol
INNER JOIN SourceTable src
on  pol.Policy_Number =replace(ltrim(replace(src.Policy_Number,'0',' ')),' ','0')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多