我有一个查询最终将返回一个可能具有值“1”、“2”或“3”的列,其中 1 表示红色,2 表示蓝色,3 表示绿色。
如何修改查询而不是返回 1,而是返回 'RED',返回 2 'BLUE',等等
我希望我的结果是这样的:
颜色
红色的
红色的
绿色
蓝色的
代替 :
颜色
1
1
3
2
我有一个查询最终将返回一个可能具有值“1”、“2”或“3”的列,其中 1 表示红色,2 表示蓝色,3 表示绿色。
如何修改查询而不是返回 1,而是返回 'RED',返回 2 'BLUE',等等
我希望我的结果是这样的:
颜色
红色的
红色的
绿色
蓝色的
代替 :
颜色
1
1
3
2
或者,并且符合更多标准:
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'
SELECT Decode(MyField, 1, 'RED'
2, 'BLUE'
3, 'GREEN'
'UNDEFINED' as myfieldColor
FROM myTable