Tôi cố gắng để tải tập tin CSV vào một bảng Hive như vậy:Hive tải CSV bằng dấu phẩy trong các lĩnh vực trích dẫn
CREATE TABLE mytable
(
num1 INT,
text1 STRING,
num2 INT,
text2 STRING
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ",";
LOAD DATA LOCAL INPATH '/data.csv'
OVERWRITE INTO TABLE mytable;
Các csv được giới hạn bởi một dấu phẩy (,) và trông như thế này:
1, "some text, with comma in it", 123, "more text"
Điều này sẽ trả về dữ liệu bị hỏng vì có ',' trong chuỗi đầu tiên.
Có cách nào để đặt dấu phân cách văn bản hoặc đặt Hive bỏ qua ',' trong chuỗi không?
Tôi không thể thay đổi dấu phân cách của csv vì nó được lấy từ nguồn bên ngoài.
Cảm ơn điều đó đã xảy ra! –
sed -i 's/"// g' your_file_name thực hiện quá trình tiền xử lý bằng cách xóa văn bản được trích dẫn. Tuy nhiên, bạn CẦN phải chắc chắn rằng không có loại bỏ vô tội các ký tự được trích dẫn khác ("). – ekta