2017-03-14 3 views
1

Ich habe eine leere partitionierten Tabelle in Hive und ich versuche, von einer Spalte Namen zusammen mit der Reihenfolge der Spalten in der Tabelle:Hive-Anweisung in einer partitionierten Tabelle ändern

> describe formatted test_hive; 

col_name data_type Kommentar

col1 Datum col2 Zeichenfolge col3 String abc dezimal (11,2)

Partitionsinformationen

012.351.

col_name data_type Kommentar

mth_year String

Der Versuch, abc xyz umbenennen und es nach col1 bewegen, aber wenn ich

alter table test_hive partition(mth_year) CHANGE abc xyz DECIMAL(11,2) AFTER col1; 

aber immer Fehler laufen:

FAILED: SemanticException [Error 10006]: Partition not found {proc_mth_year=null} 

Kann Wir ändern auf leere Partitionstabelle?

Antwort

0

Sie müssen die spezifische Partition, z. -

alter table test_hive partition (mth_year='03_2017') 
change abc xyz decimal(11,2) after col1 
; 

oder es in der Tabelle Ebene tun -

alter table test_hive 
change abc xyz decimal(11,2) after col1 
cascade 
; 
+0

Danke für die Antwort, es funktionierte. Ist es weiser, CASCADE hinzuzufügen, da wir uns auf Tabellenebene verändern? – Shanil

+0

Wenn es für die ganze Tabelle und nicht nur neue Partitionen, also 'Ja' –

Verwandte Themen