我想在 where 子句中使用带有两个变量的 WHERE 语句。我对此进行了研究,了解如何在 Databricks 中的 SQL 语句中使用变量以及使用 Python 插入变量,但不起作用。我尝试实施所提供的解决方案,但它不起作用。
a= 17091990
b = 30091990
df = spark.sql(' SELECT * FROM table WHERE date between "a" AND "b" ')
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Pyspark 将 Databricks 中的 INT 列转换为日期列。该列如下所示:
Report_Date
20210102
20210102
20210106
20210103
20210104
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 CAST 函数
df = df.withColumn("Report_Date", col("Report_Date").cast(DateType()))
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
由于数据类型不匹配,无法解析“CAST(`Report_Date` AS DATE)”:无法将 int 转换为 date;
你知道我怎样才能得到预期的输出吗?