2017-08-23 30 views
0
Hive vertion:apache-hive-2.3.0 
hive> select TAG_EMOTION_KEY AS key,count(1) AS cnn from NB_ORDER_RATE_EMOTION t where t.cnn>10 group by TAG_EMOTION_KEY ; 
FAILED: SemanticException [Error 10002]: Line 1:84 Invalid column reference 'cnn' 

是什麼原因?Hive Failed SemanticException

回答

0

你基本上試圖得到TAG_EMOTION_KEY的列表,它出現的次數超過了10次。爲此你需要使用HAVING而不是WHERE子句。

像:

select 
    TAG_EMOTION_KEY AS key, 
    count(1) AS cnn 
from 
    NB_ORDER_RATE_EMOTION t 
group by 
    TAG_EMOTION_KEY 
having 
    count(1) > 10 
; 

以下問題提供HAVING & WHERE從句的區別:SQL - having VS where

+0

韓國社交協會,我想知道做HIVE支持別名?例如:「選擇TAG_EMOTION_KEY AS鍵,從NB_ORDER_RATE_EMOTION t組通過t.key計數(1)」-----它不起作用。 –