2016-10-11 6 views
0

Ich bin eine CTAS Abfrage in hive ausführt, wie unten erwähnt:Hive Fehler: keine passende Methode

create table ps_agg 
as select host, count(*) c, sum(l4_ul_throughput+l4_dw_throughput) usg from ops.isop 
where 
cast(cast(from_unixtime(begin_time) as TIMESTAMP) AS DATE) >= '2016-08-01' & 
cast(cast(from_unixtime(begin_time) as TIMESTAMP) AS DATE) < '2016-09-01' 
group by host; 

Wo host, begin_time, l4_ul_throughput & l4_dw_throughput sind Spalten in ISOP-Tabelle.

Der Fehler, den ich auf Ausführen dieser Abfrage bin empfangen ist:

Wrong arguments 'begin_time' : No matching method for class org.apache.hadoop.hive.ql.udf.UDFOPBitAnd with (string, timestamp). 

begin_time ist int in der Tabelle eingeben.

Ich habe keine Ahnung, was schief läuft. Kann jemand bitte eine Lösung vorschlagen?

Antwort

0

Haben Sie das gelöst; es war ein syntaktischer Fehler.

Korrigierte die Syntax:

create table ps_agg 
as select host, count(*) c, sum(l4_ul_throughput+l4_dw_throughput) usg from ops.isop 
where 
cast(cast(from_unixtime(begin_time) as TIMESTAMP) AS DATE) >= '2016-08-01' AND 
cast(cast(from_unixtime(begin_time) as TIMESTAMP) AS DATE) < '2016-09-01' 
group by host; 
Verwandte Themen