一、查询的部分语句
CASE SUM(g.shgfxsc) WHEN 0 THEN '' ELSE SUM(g.shgfxsc) END AS gfx_use_num
二、报错
三、问题来源
-
我发现这个问题是别的原因引起,原本我安装完KingBase是没有这个问题的。但是我在查询语句的时候,需要筛选的条件是某个字段不为空的
where a is not null and a != ''
,但是a != ''
失效了。 -
于是我查询了一下资料,需要在data目录下的kingbase.config中的
ora_input_emptystr_isnull
改为false,而改完之后再查询语句,就会出现上图的报错,THEN ''
是无法执行的。
四、解决办法
- 将
ora_input_emptystr_isnull
改回true,但是会引起判空字符串失效 - 将查询出的值,在后端或者前端处理(我用的是这个办法,因为判空字符串肯定是必要的)