2016-06-17 13 views
0

私は、生ログに来て、次のデータを持っている:複数の区切り文字

ここ
America^|#|^Northern America^|#|^United States^|#|^Texas^|#|^Houston TX 

区切り文字です^ |#|^

しかし外部表を作成するために、区切り文字を渡すに最初の文字^だけが区切り文字と見なされます。

コードを使用した:

create external table xyz 
    (
    col_name1 string, 
    col_name2 string, 
    col_name3 string, 
    col_name4 string, 
    col_name5 string, 
    ) 

    row format delimited 
    fields terminated by '^!#!^' 
    lines terminated by '\n' 

    location '/data/raw/table; 

は、このようなテーブルを期待していた:

col_name1 col_name2   col_name3  col_name4 col_name5 
America Northern America United States Texas  Houston TX 

代わりに私が得た出力がされた:

col_name1 col_name2 col_name3   col_name4 col_name5 
America  |#|   Northern America |#|   United States 

誰もが、複数を渡す方法を知っています区切り文字としての文字?

ご協力いただきましてありがとうございます。

答えて

0

この区切り文字を単一の文字区切り記号で置き換える方が良い。本当に複数の文字区切り文字が必要な場合は、Unicode文字を使用してください。

関連する問題