我对替换功能有疑问:
MyTable:
ID | Header| Year
-----------------------
123 | 1 | 2017
456 | 3 | 2016
658 | 2 | 2015
587 | 6 | 2014
....
我想将收入代码替换为实际值,例如:
如果为1,则为$ 31230- $ 41400
如果2将是$ 41560- $ 50300
如果为3,则为$ 51620- $ 60200
如果是4它将是$ 61230- $ 73000
如果9 ....
在这种情况下,我无法使用替换功能,
SELECT
ID,
REPLACE (REPLACE(INCOME_CODE, '1','$31230-$41400'), '2', '$41560-$50300'),
YEAR
FROM
MyTable
因为第二个REPLACE函数将在第一个替换中抓住任何数字2,并替换为$ 41560- $ 50300。
它会像
$ 31 $ 41560- $ 5030030- $ 41400。
最佳答案
您可以使用CASE
语句。
CASE INCOME_CODE
WHEN 1 THEN '$31230-$41400'
WHEN 2 THEN '$41560-$50300'
WHEN 3 THEN '$$51620-$60200'
WHEN 4 THEN '$61230-$73000'
..
END