col1
ABX67206
ABX67245
ABX67275
ABX67312
ABX67313
ABX67333
ABX67335
excel表,我们有一个名为policy_prefix (datatype - nvarchar)
的列。
例如:我有col1 - ABX67206
我需要输出ABX
表示从列中删除所有数值。
有时候我得到像col1-'ABXTU02'这样的记录,我需要输出'ABXTU'
这里的问题意味着只删除数值,长度保持不变
输出就像
COL1
ABX ABX ABX ABX ABX ABXTU ABXTU ABX ABXTUYT
像这样答案 0 :(得分:2)
试试这个
declare @tbl table (i varchar(50))
insert into @tbl values ('qwe1456'),('w4'),('op75'),('123')
SELECT i, LEFT(i,PATINDEX('%[0-9]%',i)-1)
FROM @tbl
答案 1 :(得分:1)
您可以使用10次REPLACE
功能,即:
select replace(replace(replace(column, '0', ''), '1', ''), '2', '') ... and so on
答案 2 :(得分:1)
如果 col1 中的文本始终采用相同的格式(3个字符,后跟任意数量的数字),则可以使用子字符串函数:
SELECT x = SUBSTRING('ABX67206',1,3);
在这种情况下会返回ABX
。