我已经删除了我的列中的所有前导零,但如果同一列中有一个空格,它就会被'0'所取代,怎么办?例如:批号有000123,0000145,但当这一列有'CO PO'时,它就被填上了0,O/P是 CO0PO 。
SELECT REPLACE(LTRIM(REPLACE(COMPANYCODE, '0', ' ')), ' ', '0')
|
|
满身肌肉的充值卡 · python基础—re模块下的函数及匹配对象 ...· 1 月前 · |
|
|
英姿勃勃的莲藕 · python在文件指定位置插入字符串_pyt ...· 1 月前 · |
|
|
傻傻的馒头 · STRING_SPLIT ...· 4 周前 · |
|
|
坚韧的啤酒 · 表达式和函数 - Azure Data ...· 3 周前 · |
|
|
睿智的墨镜 · php文件路径通配符,php字符串匹配通配符*?· 昨天 · |
|
|
安静的回锅肉 · springboot Test ...· 1 年前 · |
|
|
粗眉毛的作业本 · flask redirect post ...· 2 年前 · |
|
|
酷酷的牙膏 · Android 12 Wifi ...· 2 年前 · |
在2017年,SQL引入了函数TRIM 请查看例子(我不明白你是否需要保留PO/CO)。
DECLARE @x VARCHAR(10) = 'PO 000127' SELECT TRIM('0 ' FROM @x) AS Result, WHEN @x like '%PO%' THEN 'PO ' + TRIM('0 ' FROM SUBSTRING(@x, 3, LEN(@x))) WHEN @x like '%CO%' THEN 'CO ' + TRIM('0 ' FROM SUBSTRING(@x, 3, LEN(@x))) ELSE TRIM('0 ' FROM @x) END AS Result2 WHEN @x like '%PO%' THEN REPLACE(@x, 'PO', '') WHEN @x like '%PO%' THEN REPLACE(@x, 'PO', '') ELSE RTRIM(LTRIM(@x)) AS BIGINT) AS result