我在Spark SQL中遇到了一个问题。它将DateTim.Date对象解释为我正在编写的一条SQL语句中的数学公式或整数。
currentDateAndTime = datetime,now()
current_month = currentDateAndTie.strftime("%m")
current_year = currentDateAndTime.strftime("%Y")
first_day_of_month = date(int(current_year), int(current)month), 1)
print(first_day_of_month)
type(first_day_of_month)
然后你就会得到:
2022-10-01日期
然后当我这么做的时候
df = spark.sql("""
SELECT * FROM table_A
WHERE IncidentCreatedDate < {}
""".format(first_day_of_month))
我收到一条错误消息,显示AnalysisException:Cannot Resolve‘(TABLE_A.IncidentCreatedDate
<((2022-10)-1’由于数据类型不匹配:不同类型in‘(TableA.IncidentCreatedDate
<((2022-10-1)’(日期和整数)。;......
上面的所有内容可能都有打字错误,因为我必须在另一台笔记本电脑上输入所有内容,因为另一台是我的工作笔记本电脑,他们不喜欢我将该笔记本电脑上的任何东西发送到其他任何地方。)
1条答案
按热度按时间rhfm7lfc1#
PYSPARK不支持预准备语句。
格式将取代步长,但字符串必须用单引号引起来,因此只需添加它们