2014-11-04 50 views
1

我想要在Hive QL腳本中參數化GROUP BY子句。Hive中的條件GROUP BY子句QL

SELECT COUNT(*) AS sales, country, state, city 
FROM testdb.data 
WHERE 
    PRICE > 5 

GROUP BY 
    IF (TRUE, 
     (country, state, city), 
     (country, state) 
    ) 

如何實現這樣的查詢?

回答

0

我曾嘗試在GROUP BY及其作品中使用CASE語句。 您可能想要驗證查詢的結果。 如果你可以將你的條件變成case語句,這個查詢可以工作。

SELECT * 
FROM testdb.data 
WHERE price > 5 
GROUP BY country, state 
CASE <cond> 
    WHEN <val> THEN city 
END ;