如何获取列的最后一个字符并将其转换为数字?示例:
列
000000000017A
000000000038B
000000431c
如果字母等于:
A=1
B= 2
C=3
结果:
171
382
4313
A
的ASCII值为65。因此,您可以将C
转换为3
,通过从其ASCII值中减去64。
select cast(
left(col1, len(col1) - 1) +
cast(ascii(upper(right(col1, 1))) - 64 as char(1))
as int)
from Table1
我认为你需要使用SQL的REPLACE函数
http://msdn.microsoft.com/en-en/library/ms186862.aspx用下面的SQL语句解决了这个问题。要在一列中更改多个条件替换,我使用:
SELECT REPLACE(REPLACE(REPLACE(Prev_Month_Vol,'A','1'), 'B', '2'), 'C', '3')
FROM table1
希望这能帮助那些想要做替换语句的人。