Hive wählen Sie Spalten zu tun, eine case-Anweisung auf

Dadurch wird der export der Daten aus dynamodb dynamisch zu s3.

-- Load S3 Table with data from DynamoDB
INSERT OVERWRITE TABLE s3_table SELECT * FROM dynamodb_table;

Das problem ist, dass es Blätter in einem Haufen von \N. Kann ich schreiben Sie von hand, wird es so Aussehen

-- Load S3 Table with data from DynamoDB
   INSERT OVERWRITE TABLE s3_table SELECT DCS_ID, CASE WHEN MAKE IS NULL THEN "" ELSE MAKE END, CASE WHEN MODEL IS NULL THEN "" ELSE MODEL END FROM dynamodb_table; 

Das problem ist die Auswahl der Spalten, zu sagen: "Wenn Spalte NULL ist, Dann "" Sonst Spalte Ende"

Die aktuelle Ausgabe sieht so aus

PORTAL  1.5.1.25.2      2013-08-09 13:45:20.126 2013-08-09 13:45:20.282 \N      \N      \N      \N      \N      \N

Die gewünschte Ausgabe wie folgt aussieht

PORTAL  1.5.1.25.2      2013-08-13 18:18:24.667 2013-08-13 18:18:24.832 
Was meinst du mit "Blättern in einer Reihe von neuen Linien"?
Ich habe den Ausgang bin ich immer aktuell und die Ausgabe die ich bekomme, wenn ich es von hand
Oh, es ist buchstäblich verlassen diese \N. Komisch. Sorry für die Bearbeitung, falsch. Jetzt verstehe ich das Problem
Es ist in Ordnung, ich hätte das gleiche getan, wenn ich Sie war. Ich glaube, es bedeutet, dass für jede Spalte, die keinen Wert in es.
eine Idee, wie man wählen Sie die Spalte, in der diese Anweisung INSERT OVERWRITE TABLE s3_table SELECT * FROM dynamodb_table;

InformationsquelleAutor Tall Paul | 2013-08-14

Schreibe einen Kommentar