我想在两个日期列之间过滤df
,例如:
+------+----------+----------+
| code| Date1| Date2|
+------+----------+----------+
| 10|2018-06-01|2018-06-05|
| 15|2018-06-01|2018-06-15|
| 16|2018-06-01|2018-06-20|
|+------+----------+---------+
当我尝试这个时:
test_df = df.select('code','revenue').where(F.col('Date1').between('Date1','Date2'))
我有一个空结果。 谢谢您的帮助。
答案 0 :(得分:0)
应该是-
test_df = df.select('code','revenue').where(F.col('Date1').between(F.col('Date1'),F.col('Date2')))
否则,它将“ Date1”视为一个值(即所有行中的常量),并且不会将其与列值进行比较。顺便说一句-这将永远是真的。