Я пытаюсь вставить данные из CSV-файла в таблицу кустов, где даты в CSV-файлах имеют такие форматы, как «мм / дд / гггг», «мм-дд-гггг», которые нужно вставить в кусттаблица в столбце с типом данных дата, т.е. «гггг-мм-дд».
Сначала я попытался загрузить данные из CSV-файла в таблицу, дата которой хранится с типом данных в виде строки.Затем я попытался вставить те же данные в новую таблицу, тип данных которой - дата, но я смог загрузить даты только внутри таблицы одного формата, в то время как другой формат был сохранен как NULL.
create table sample1(order_id int, order_dt string);
load data local inpath "\home\cloudera\data.txt" into table sample1;
create table sample2(order_id int, order_dt date);
insert into table sample2 select order_id,
to_date(from_unixtime(unix_timestamp(order_dt,'mm/dd/yyyy'),'yyyy-mm-dd'))
from sample1;
csv файл:
order_id order_date
1 10/27/2016
2 10/27/2018
3 11/23/2016
4 09-23-2013
5 08-20-2010
6 05-13-2017
7 02/15/2009
выходпосле:
выберите * из sample2;
1 2016-10-27
2 2018-10-27
3 2016-11-23
4 NULL
5 NULL
6 NULL
7 2009-02-15
Здесь я получаю NULL для другихформат даты.