admin

替换列值

sql

我有这张桌子

Name       Rating
A            2
B            1 
C            5
D            3
E            1
F            4

我有一个评分系统

1-Excellent, 2-Very Good, 3-Good, 4-OK, 5-Poor

我想知道是否可以替换表中的数值以得到以下结果表。

Name       Rating
A         Very Good
B         Excellent
C           Poor
D           Good
E         Excellent
F            OK

谢谢


阅读 161

收藏
2021-06-07

共1个答案

admin

使用CASE声明。当然,这仅在您的列未设置为数值的情况下才有效。

UPDATE tblRatings
SET Rating = CASE WHEN 1 THEN 'Excellent'
                  WHEN 2 THEN 'Very Good'
                  WHEN 3 THEN 'Good'
                  WHEN 4 THEN 'OK'
                  ELSE 'Poor' 
             END

如果是这样,您将需要使用一条SELECT语句;否则,您将使用它。

SELECT CASE WHEN 1 THEN 'Excellent'
            WHEN 2 THEN 'Very Good'
            WHEN 3 THEN 'Good'
            WHEN 4 THEN 'OK'
            ELSE 'Poor' 
       END
  FROM tblRatings
2021-06-07