2017-03-12 1 views
4

Ma requête est:Comment construire une table ruche sur des données qui sont séparées par «^P » delimiter

CREATE EXTERNAL TABLE gateway_staging (
    poll int, 
    total int, 
    transaction_id int, 
    create_time timestamp, 
    update_time timestamp 
) 
    ROW FORMAT DELIMITED FIELDS TERMINATED BY '^P'; 

(Je ne sais pas si «^P » peut être utilisé comme séparateur, mais essayé out)

Le résultat montre tous les champs «aucun» lorsque je charge les données dans la table ruche.

Les données ressemble à:

4307421698^P200^^ P138193920770 P2017-03-08 02: 46: 18,021204^P2017-03-08 02: 46: 18,021204

S'il vous plaît aide moi.

Répondre

2

Voici les options:

  • ... fields terminated by '\020' (Octal)
  • ... fields terminated by '16' (décimal)
  • ... fields terminated by '\u0010' (Hexadécimal)

S'il vous plaît noter qu'il y avait un bug lié aux littéraux Unicode ('\ u0010') qui est supposé être corrigé dans la version 2.1, donc usi La 3ème option ne fonctionnera pas sur les versions antérieures. https://issues.apache.org/jira/browse/HIVE-13434

0

La valeur octale de ^P est 020. Essayez,

CREATE EXTERNAL TABLE gateway_staging (
    poll int, 
    total int, 
    transaction_id int, 
    create_time timestamp, 
    update_time timestamp 
) 
    ROW FORMAT DELIMITED FIELDS TERMINATED BY '\020';