我正在为HIVE中的一列计算AVG(使用窗口函数)。查询看起来像这样
SELECT AVG(price) (PARTITION BY cust_id ORDER BY mnth DESC ROWS BETWEEN 1 FOLLOWING AND 12 FOLLOWING)
price
列有一些NULL值,AVG
函数在计算中不考虑它们。但是我需要将NULL值作为0来处理。我使用NVL
如下
SELECT AVG(NVL(price)) (PARTITION BY cust_id ORDER BY mnth DESC ROWS BETWEEN 1 FOLLOWING AND 12 FOLLOWING)
然而,这不起作用。我该如何处理这个问题?
答案 0 :(得分:1)
SELECT AVG(NVL(price,0))
您忘记了第二个参数(default_value)