4

Hive に 2 つのテーブルがあります。1 つ目は外部テーブル、2 つ目は管理テーブルです。管理対象テーブルは、INSERT OVERWRITE...SELECT FROM external_table を使用して外部から取り込まれます。どちらのテーブルも、「,」で区切られた行で作成されます。selects クエリをファイルに実行すると、結果ファイルの区切り文字はタブですが、カンマが必要です。コンマに変更する方法、そのためのプロパティが表示されません。

4

1 に答える 1

16

まず、行区切り文字ではなく、フィールド区切り文字を変更する必要があります。

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

次に、この問題が引き続き発生する場合は、sedを使用して簡単に変更できます。

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

[\t]はControl+Vを押してから、タブ文字を押すことであることに注意してください。

sed 's/<Control+V><TAB character>/,/g'
于 2012-12-04T12:56:51.257 に答える