我在Hive中有一个名为“ 事务 ”的表格,该表格在名为“DS”的列上进行分区,该列的数据类似于“2018-05-05”, “2018-05-09”,“2018-05-10”等
此表格填写完整的一天。在任何时候,该表都将有数据直到前一天
当我查询像
这样的trasaction表时SELECT COUNT(*) FROM trasaction WHERE DS >= "current date";
我得到了
0行 - 这是正确的,因为尚未为当前和未来日期加载数据
当我在查询下面运行时
SELECT DISTINCT DS FROM trasaction WHERE DS >= "current date";
我得到了
2018年5月9日
2018年5月10日
2018年5月11日
2018年5月12日
2018年5月13日
...
2018年8月30日
我已经检查了HDFS位置和分区文件夹以及将来的日期。我猜那些做ETL的人,已经使用
为未来的日期添加了分区 ALTER TABLE trasaction ADD PARTITION (DS = '2018-05-13')
依此类推
我在这里做错了吗?即使两个查询的输出都是正确的,上面输出的原因是什么?