这是我的桌子' ekko'我需要获得所有行,其中今天的日期和列aedat之间的差异大于65天。如何构建一个hive查询?我使用unix OS。
id rfid aedat
---|-------|-------------|
1 | 3122 | 2017-12-08 |
2 | 3423 | 2017-12-27 |
3 | 4564 | 2017-11-09 |
4 | 23442 | 2017-10-03 |
答案 0 :(得分:0)
在配置单元中,您可以使用 current_date 功能,该功能可以具有今天即2018-02-26,然后在where子句中使用 datediff函数计算aedat和current_date之间的差异大于65天。
将aedat作为日期类型
hive>select * from ekko where datediff(current_date,cast(aedat as date))>65;
(或)
没有将aedat转换为日期类型
hive> select * from ekko where datediff(current_date,aedat)>65;