计算列中的SQL null空格

时间:2017-11-01 16:39:57

标签: sql firebird

我创建了一个计算列,但它给了我一个空值的行。如果我添加另一个计算字段,它会添加2个空行,依此类推。

我的目标是获得具有单个值的单行。没有空。

代码:

SELECT 
CLIENT_CODE, 
( CASE WHEN CLITBP.TBPCODIGO=101 THEN COALESCE( CLITBP.TBPDESC2,0) ELSE NULL END) TAB101
FROM
CLIENT
GROUP BY 1,2

输出错误

wrong

预期输出

right

1 个答案:

答案 0 :(得分:1)

如果您希望每个客户端代码占一行,那么GROUP BY中只能有一个密钥。也许这就是你想要的:

SELECT CLIENT_CODE,
       MAX(CASE WHEN CLITBP.TBPCODIGO = 101 THEN COALESCE(CLITBP.TBPDESC2, 0) END) as TAB101 
FROM CLIENT
GROUP BY CLIENT_CODE;