У меня есть объект столбца datetime, объявленный как десятичный (38,0), а не как отметка времени или дата, а ввод данных - «yyyMMdd». Как выбрать данные в этом столбце для преобразования в формате даты как «гггг-ММ-дд» в spark sql (scala) в течение дня или двух дней?
Я пробовал:
select count(*) from table_name where to_date('column_name','yyyy-MM-dd') = date_sub(current_date(),1));
это дает мне счет 0, когда данные имеют более 500000 записей
Я пытался:
select count(*) from table_name where from_unixtime(cast(load_dt_id as string), 'yyyy-MM-dd') = date_sub(current_date(), 1));
Я получил данные в 1970-01-31 годах, которые эти данные за год отсутствуют в таблице, даже когда я выбрал этот столбец, где он выглядит как «1970%», я получил «ОК» со значком, ускоряющим запрос с помощью Delta. Выбор данных в порядке этого столбца начался с 20140320