Select len(productid),productid,*
FROM dbo.produts
where Place = 'KA'
and len(productid) <> 10
order by len(productid)
这个查询过滤了需要更新的数据 -- 我需要更新 'productid' 中格式不正确的数据 --(数据应为 10 个字符,采用 4-2-4 格式,在需要的地方以 0 开头)(productid 列是一个 varchar (256) 列) 基本上我需要将前导零添加到具有 where 条件的 varchar 列
|productid| |Correct productid value| |
---------------------------------------
|234-55-43||000234-55-43|
|76-7-89||0000076-7-89|
更新这些记录的可能解决方案是什么?
最佳答案
这个其实很简单:
SELECT productid,
RIGHT('000000000'+productid,10) CorrectProductid
FROM dbo.YourTable
;
https://stackoverflow.com/questions/43619723/