Hive output della query delimitatore

Ho 2 tabelle dell’Alveare – il primo è esterno, il secondo è riuscito. Gestito tabella è popolata da esterno utilizzando INSERIRE SOVRASCRIVERE…SELEZIONARE external_table. Entrambe le tabelle sono creato con la riga delimitato da ‘,’. Quando ho eseguito seleziona query in un file, il delimitatore nel file risultato è la Scheda, ma ho bisogno di una virgola. Come cambiare una virgola, non vedo alcuna proprietà.

OriginaleL’autore Valery Yesypenko | 2012-12-04

One Reply
  1. 13

    Prima di tutto, è necessario modificare si delimitatore di campo , non la tua linea di delimitatore di ie.

    hive >> CREATE TABLE some_table 
            (col1 int,
             col2 int,
             col3 string)
            ROW FORMAT DELIMITED
            FIELDS TERMINATED BY ','
            STORED AS TEXTFILE;
    

    In secondo luogo, se si trovano ancora ad affrontare questo problema, si può semplicemente modificare usando sed.

    bash >> hive -e 'select * from some_Table' | sed 's/[\t]/,/g'  > outputfile.txt
    

    Si prega di notare che [\t] e premere Ctrl+V e poi la scheda di char:

    sed 's/<Control+V><TAB character>/,/g'
    
    grazie Nicole. Ma ho pensato che c’è qualche configurazione per impostare la virgola come uscita di default il delimitatore. Ad alveare comportamento è strano…
    Potrebbe, per favore, breve me di quello che accade qui – sed 's/[\t]/,/g' > outputfile.txt. hive -e è per l’esecuzione di hive dal prompt dei comandi, è corretto?
    Controllare questa risposta stackoverflow.com/a/18142190/1503859

    OriginaleL’autore Nicole Hu

Lascia un commento