Date 如何过滤年初和前三年的数据?
我目前有:Date 如何过滤年初和前三年的数据?,date,apache-spark,datetime,pyspark,apache-spark-sql,Date,Apache Spark,Datetime,Pyspark,Apache Spark Sql,我目前有: last3years_dates = ('2020-01-01 08:56:00', '2020-10-29 09:18:00') df_NIRS = df_NIRS.where(F.col('RaisedDate').between(*last3years_dates)) “2020-01-01 08:56:00”和“2020-10-29 09:18:00”是占位符。从今年年初,即“2020-01-01 00:00:00”到前三年的“2017-01-01 00:00:00”,如果
last3years_dates = ('2020-01-01 08:56:00', '2020-10-29 09:18:00')
df_NIRS = df_NIRS.where(F.col('RaisedDate').between(*last3years_dates))
“2020-01-01 08:56:00”和“2020-10-29 09:18:00”是占位符。从今年年初,即“2020-01-01 00:00:00”到前三年的“2017-01-01 00:00:00”,如果不硬编码,一个过滤器如何进行过滤。可能使用当前时间戳()
?尝试下面的代码
df
.filter("dtCol between (current_timestamp - INTERVAL + 3 YEARS) AND date_trunc('Year',current_timestamp)")
.show()
试试下面的代码
df
.filter("dtCol between (current_timestamp - INTERVAL + 3 YEARS) AND date_trunc('Year',current_timestamp)")
.show()