在SQL中使用'CASE'进行SELECT

Vam*_*shi 8 sql select case

我有一组一对一的映射A - > apple,B-> Banana和那样..我的表有一个值为A,B,C的列.

现在我正在尝试使用一个select语句,它会给我直接的结果

SELECT 
  CASE 
     WHEN FRUIT = 'A' THEN FRUIT ='APPLE' 
     ELSE WHEN FRUIT ='B' THEN FRUIT ='BANANA'     
 FROM FRUIT_TABLE;
Run Code Online (Sandbox Code Playgroud)

但我没有得到正确的结果,请帮帮我..

Hog*_*gan 42

这只是case语句的语法,它看起来像这样.

SELECT 
  CASE 
    WHEN FRUIT = 'A' THEN 'APPLE' 
    WHEN FRUIT = 'B' THEN 'BANANA'     
  END AS FRUIT
FROM FRUIT_TABLE;
Run Code Online (Sandbox Code Playgroud)

作为提醒记住; 没有执行赋值,该值成为列内容.(如果要将其分配给变量,则将其放在CASE语句之前).

  • 这也可以用`CASE FRUIT WHEN''写成 (5认同)

eve*_*ton 5

改成:

SELECT 
  CASE 
    WHEN FRUIT = 'A' THEN 'APPLE' 
    WHEN FRUIT = 'B' THEN 'BANANA'     
  END
FROM FRUIT_TABLE;
Run Code Online (Sandbox Code Playgroud)

  • 不是要求 (2认同)