我在psql中运行此数据库视图时收到以下错误(错误:被零除)。甚至我也无法在Rails控制台中访问我的表。如果有人对此错误有任何解决方案,请对此发表评论,谢谢。
select
(exam_id || '00' || quarter)::bigint as id,
account_id,
exam_id,
quarter,
quarter_label,
count(id) as assessments,
max(banding_percentage) as top_assessment_percentage,
min(banding_percentage) as bottom_assessment_percentage,
round(avg(banding_percentage),2) as avg_assessment_percentage
from report_assessments
group by account_id, exam_id, quarter, quarter_label;
为了避免遇到division by zero
异常,您应该使用nullif
,以便可以捕获此nullif
并将其替换为0
,例如
null
您需要做这样的事情。在我的情况下有效:
WITH j (v1,v2) AS (
VALUES (1.0,0.0),(10.0,3.0)
)
SELECT v1/nullif(v2,0) AS div FROM j;
div
--------------------
3.3333333333333333
(2 Zeilen)