У меня есть таблица с именем " транзакция " в Hive, которая разбита на столбец с именем "DS", в котором будут данные типа "2018-05-05", "2018 -05-09 "," 2018-05-10 "и т. Д.
Эта таблица заполняется в течение ночи за завершенный день. В любой момент таблица будет иметь данные до предыдущего дня
Когда я запрашиваю таблицу транзакций, например
SELECT COUNT(*) FROM trasaction WHERE DS >= "current date";
Я получаю
0 строк - это правильно, потому что данные еще не были загружены для текущих и будущих дат
Когда я запускаю запрос ниже
SELECT DISTINCT DS FROM trasaction WHERE DS >= "current date";
Я получаю
2018-05-09
2018-05-10
2018-05-11
2018-05-12
2018-05-13
...
2018-08-30
Я проверил расположение папок и разделов HDFS и для будущих дат. Я предполагаю, что люди, которые делают ETL, уже добавили раздел для будущих дат, используя
ALTER TABLE trasaction ADD PARTITION (DS = '2018-05-13')
и т. Д.
Я здесь не так? Даже если выходные данные обоих запросов верны, в чем причина вышеуказанного вывода?