2016-01-03 61 views
0

我正在嘗試在Amazon Elastic Map Reduce上使用Cloudera Impala Date函數。
The documentation指出,有一個叫dayname功能,但是當我執行這個查詢:Cloudera日期函數

SELECT dayname(ts) FROM `default`.`data_impala_local` LIMIT 100 

我越來越

(150)不支持的標量函數:DAYNAME。

這與許多功能不僅僅是這一個。任何人都知道這裏有什麼問題?

+0

你能提供一個小樣本的數據嗎? – madbitloman

+0

我發現該功能在Impala 1.2不支持,如果您可以執行升級到版本2。 – Dotnetsqlcoder

回答

0

可能您的日期未正確轉換。

我假設ts對應於unix時間戳,因此根據文檔,您應該先將其轉換爲字符串。我建議嘗試這樣的:

SELECT dayname(from_unixtime(ts, 'yyyy-mm-dd')) 
FROM `default`.`data_impala_local` LIMIT 100; 

希望有所幫助。

+0

我發現該功能在Impala 1.2上不受支持,文檔爲2.0 – Dotnetsqlcoder

0

好吧,我發現亞馬遜使用Impala 1.2,並且文檔適用於Impala 2.0。所以檢查文檔版本很重要。

像DayName和DayofWeek以及許多其他功能在Amazon直到今天都不支持。