1

我有一个查询最终将返回一个可能具有值“1”、“2”或“3”的列,其中 1 表示红色,2 表示蓝色,3 表示绿色。

如何修改查询而不是返回 1,而是返回 'RED',返回 2 'BLUE',等等

我希望我的结果是这样的:

颜色

红色的

红色的

绿色

蓝色的

代替 :

颜色

1

1

3

2

4

2 回答 2

3

或者,并且符合更多标准:

SELECT CASE WHEN MyField = 1 THEN 'RED'
            WHEN MyField = 2 THEN 'BLUE'
            WHEN MyField = 3 THEN 'GREEN'
            ELSE 'UNDEFINED'
       EMD myfieldColor
FROM myTable;

它也更灵活,因为您可以在 WHEN 子句中使用更广泛的 SQL 分类。例如:

WHEN MyField = 2 AND Lang = 'SPANISH' THEN 'AZUL'
于 2013-01-25T02:53:40.410 回答
2
SELECT Decode(MyField, 1, 'RED'
                       2, 'BLUE'
                       3, 'GREEN'
                          'UNDEFINED' as myfieldColor

FROM myTable
于 2013-01-25T02:15:23.273 回答