首页 > 解决方案 > 在这种情况下,我收到了缺少关键字错误

问题描述

在这种情况下,我收到了缺少关键字错误。

是什么原因?

SELECT (CASE WHEN (MM.MAKE_DESCRIPTION = 'TOY')
       THEN
          CASE
             WHEN MM.MODEL_DESCRIPTION = 'SCION' THEN MM.MAKE_DESCRIPTION = 'SCION'
             WHEN MM.MODEL_DESCRIPTION <> 'SCION' THEN MM.MAKE_DESCRIPTION
          END
    ELSE MM.MAKE_DESCRIPTION END) AS MAKE
FROM table_make MM where value ='test';

标签: sqlcase

解决方案


看起来在您的一个 when 子句中,您已经将另一个布尔表达式作为您的 THEN 输出,因此您没有说 then show 'SCION',而是将 then show 布尔表达式放在了没有意义的地方。

SELECT (CASE WHEN (MM.MAKE_DESCRIPTION = 'TOY')
   THEN
      CASE
         WHEN MM.MODEL_DESCRIPTION = 'SCION' THEN 'SCION' --edit here
         WHEN MM.MODEL_DESCRIPTION <> 'SCION' THEN MM.MAKE_DESCRIPTION
      END
ELSE MM.MAKE_DESCRIPTION END) AS MAKE

FROM table_make MM where value ='test';

推荐阅读