使用Hive获取7天数据

使用Hive获取7天数据,hive,Hive,我有一张不同日期的桌子 2014-11-20 2014-12-12 2014-11-10 2014-12-13 2014-10-12 2016-01-15 2016-01-14 2016-01-16 2016-01-18 想要最近7天的数据最大日期-7 2016-01-15 2016-01-14 2016-01-16 2016-01-18 我尝试了下面的查询,但没有成功 select * from date_txt1 where DATEDIFF((select max(purchase_d

我有一张不同日期的桌子

2014-11-20
2014-12-12
2014-11-10
2014-12-13
2014-10-12
2016-01-15
2016-01-14
2016-01-16
2016-01-18
想要最近7天的数据最大日期-7

2016-01-15
2016-01-14
2016-01-16
2016-01-18
我尝试了下面的查询,但没有成功

select * from date_txt1 where DATEDIFF((select max(purchase_date) from date_txt1),(select min(purchase_date) from date_txt1)) <= 7;

在datediff中,仅使用列名作为第二个参数:

select * from date_txt1 
where DATEDIFF((select max(purchase_date) from date_txt1), purchase_date) <= 7;
更新:最大提取时间:

with maxDate as (
    select max(purchase_date)  as end_date
    from date_txt1
)
Select * 
From date_txt1 , maxDate
where DATEDIFF(maxDate.end_date, purchase_date) <= 7;

Hi@pashaz感谢您的帮助,但我收到失败消息FAILED:ParseException行1:40无法识别表达式规范中“select”“max”附近的输入
select a.purchase_date 
from date_txt1 a
cross join ( select max( purchase_date ) as maxdate from date_txt1 ) b
where DATEDIFF( b.maxdate, a.purchase_date ) <= 7