语法错误在或附近" AS" (声明时的情况)

时间:2017-12-22 12:37:13

标签: sql postgresql

如标题所示,错误发生在:

b

...

CASE
WHEN hl.brnd_fmly_desc_txt <> null THEN 'HERO BRANDS'
ELSE NULL
END AS hero_brnd_fmly_desc_txt,

代码太复杂而无法粘贴。我将离开加入h.brnd_fmly_desc_txt到现有查询并且如果满足条件:c.brnd_fmly_id = hl.brnd_fmly_id将值称为&#39; HERO BRANDS&#39;

这是Postgre Sql 8.3

提前致谢

1 个答案:

答案 0 :(得分:1)

我不知道你为什么会出现那个错误。但你的逻辑错了。表达式<> null始终返回NULL,将其视为false。你想要的逻辑是:

(CASE WHEN hl.brnd_fmly_desc_txt IS NOT NULL THEN 'HERO BRANDS'
 END) AS hero_brnd_fmly_desc_txt

不需要ELSE。您可以将其保留,但它是多余的,因为默认值为NULL