使用pyspark查找两个日期列之间的差异,可以通过以下步骤实现:
from pyspark.sql import SparkSession
from pyspark.sql.functions import datediff, to_date
spark = SparkSession.builder.getOrCreate()
data = [("2021-05-15"), ("2021-05-16"), ("2021-05-17"), ("2021-05-18")]
df = spark.createDataFrame(data, ["date_column"])
df = df.withColumn("date", to_date(df.date_column, "yyyy-MM-dd"))
start_date = "2021-05-15"
end_date = "2021-05-17"
diff_df = df.filter((df.date >= start_date) & (df.date <= end_date))
diff_df = diff_df.withColumn("date_diff", datediff(df.date, to_date(start_date, "yyyy-MM-dd")))
diff_df.show()
这样就可以得到两个日期列之间的差异,包括起始日期和结束日期在内的所有日期。
领取专属 10元无门槛券
手把手带您无忧上云