SQL 查询 - 用户定义列中的条件值

SQL Query - Conditional Values in a User-defined Column

嗨 Stack Overflow 社区,

我正在研究如何创建一个查询,该查询根据另一列中的值有条件地在用户定义的列中分配值。我不知道这是否完全有可能,因为我找不到任何相关的参考资料。我知道可以通过输入 'Yellow' As Color 之类的内容来创建用户定义的列,但这些仅限于静态值。

我在下面提供了一个输出示例,最终结果是用户定义的列值将是一个字符串。

   X(Column from Table) Color(User-Defined Column)
   1                     if X = 1, Color = 'Brown'
   2                     if X = 2, Color = 'Blue'
   3                     if X = 3, Color = 'Red'
   4                     if X = 4, Color = 'Orange'
   5                     if X = 5, Color = 'Purple'

 X  Color
 1   Brown
 2   Blue
 3   Red
 4   Orange
 5   Purple

如有任何意见,我们将不胜感激,并提前致谢!

丹尼尔

对于少量可用值,我认为大小写最合适。

SELECT X,
CASE
    WHEN X = 1 THEN "Brown"
    WHEN X = 2 THEN "Blue"
    WHEN X = 3 THEN "Red"
    WHEN X = 4 THEN "Orange"
    WHEN X = 5 THEN "Purple"
    ELSE "No color"
END AS Color
FROM Table;