列の最後の文字を取得して数値に変換するにはどうすればよいですか?例:
列
000000000017A
000000000038B
000000000431C
文字が次の値に等しい場合は、最後の文字を次のように変更する必要があります:
A = 1
B = 2
C = 3
結果:
171
382
4313
質問する
138 次
3 に答える
2
のASCII値A
は65です。したがって、ASCII値から64を引くC
ことでに変換できます。3
select cast(
left(col1, len(col1) - 1) +
cast(ascii(upper(right(col1, 1))) - 64 as char(1))
as int)
from Table1
于 2013-03-12T19:04:26.443 に答える
0
SQLのREPLACE関数を使う必要があると思います
于 2013-03-12T19:01:11.697 に答える
0
次のSQLステートメントでそれを理解しました。1つの列で複数の基準を変更するために、次を使用しました。
SELECT REPLACE(REPLACE(REPLACE(Prev_Month_Vol,'A','1'), 'B', '2'), 'C', '3')
FROM table1
これが、置換ステートメントを実行しようとしている人に役立つことを願っています。
于 2013-03-12T20:10:27.730 に答える