问答 › 查看内容
返回列表

开窗函数计算的完成率为什么显示为 0?

19 1
发表于 昨天 16:02 | 查看全部 阅读模式
在 BI 卡片中,按某字段分组,用开窗函数计算“满足指定状态的记录数 ÷ 总记录数”。分组内存在满足条件的记录,但完成率显示为 0。该计算使用 PostgreSQL 数据源。

评论1

观小程楼主Lv.1 发表于 昨天 16:02 | 查看全部
如果该表达式由 PostgreSQL 执行,SUM(CASE WHEN ... THEN 1 ELSE 0 END) 和 COUNT(...) 都返回整数,两者相除会截掉小数部分。例如 3 / 5 得到 0。

在除法前将分子转为小数即可,例如:SUM(CASE WHEN ... THEN 1 ELSE 0 END) OVER (...) * 1.0 / COUNT(*) OVER (...)。也可以先单独查看分子结果,确认条件已匹配到记录。

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

微信服务号
联系我们
电话:400-880-0750
邮箱:hello@guandata.com
Copyright © 2001-2026 观远社区 版权所有 All Rights Reserved. 浙 ICP 备15006424号-3
去回复 去发帖 返回顶部
快速回复 返回顶部 返回列表