如何在Cassandra的Select查询中计算每行多列和并输出为新列
行级多金额字段求和SQL解决方案
你需要实现的是单条记录内部多个金额字段的算术求和,而非对整列做聚合计算,直接在SELECT查询中对指定字段做加法运算并指定别名即可。
基础查询语句
如果你的6个金额字段不存在NULL值,直接使用如下写法:
SELECT id, col1 + col2 + col3 + col4 + col5 + col6 AS cal_amt FROM 你的表名;
空值兼容写法
如果字段可能存在NULL值,需要用COALESCE函数将NULL转换为0,避免求和结果异常为NULL,主流数据库均支持该函数:
SELECT id, COALESCE(col1,0) + COALESCE(col2,0) + COALESCE(col3,0) + COALESCE(col4,0) + COALESCE(col5,0) + COALESCE(col6,0) AS cal_amt FROM 你的表名;
以上写法代入你的示例数据可直接得到预期返回结果。
内容的提问来源于stack exchange,提问作者Madhu
相关产品推荐
相关产品推荐

