#SuperSet 解决除数为0报错 Error: division by zero

使用NULLIF函数可以解决除数为0的情况。

问题背景

用SuperSet进行数据分析时,有时候需要将2列的值相除,此时,如果除数为0,则会报错:

Error: division by zero

比如想用earnings和page_views计算网页价值:

page_rpm = earnings / page_views

如果page_views为0,就会报上边提到的错误。

这可怎么办呢?

解决方法

这其实不是superset的问题,而是SQL语句的问题。

针对这种情况,可以使用NULLIF这个SQL函数。

NULLIF 用法

NULLIF需要传入两个参数,然后比较这两个参数的值,如果相同,则返回NULL。

而除数为NULL是可以正常处理返回NULL。

所以,解决方法:

page_rpm = earnings / NULLIF(page_views, 0)

以上

参考