sql - 不匹配的输入“来自”预期
问题描述
好的,所以我正在尝试运行这段代码:
%%spark
spark.sql(f'''select t2.ANOT_PDA_PRD
,t2.VLR_PDA_PRD AS MAX_VLR_PDA
,(CASE t1.cd_gr_mdld_prd_pd
WHEN 7 THEN t3.DEF_B4
WHEN 8 THEN t3.DEF_B4
WHEN 9 THEN t3.DEF_B4
WHEN 10 THEN t3.DEF_B5
WHEN 11 THEN t3.DEF_B4
WHEN 12 THEN t3.DEF_B5
WHEN 13 THEN t3.DEF_B4
WHEN 14 THEN t3.DEF_B4
WHEN 15 THEN t3.DEF_B5
WHEN 16 THEN t3.DEF_B4
WHEN 17 THEN t3.DEF_B4
WHEN 18 THEN t3.DEF_B4
WHEN 22 THEN t3.DEF_B5
ELSE 0 END) AS TMP_QUALI
,T3.ANOT_PDA_CLI
from temp_vars_qlt as t1
left join temp_vars_qlt as t2
on t1.dt_mvtc = t2.dt_mvtc and t1.cd_cli = t2.cd_cli and T1.cd_gr_mdld_prd_pd=t2.cd_gr_mdld_prd_pd
left join temp_vars_qlt as t3
on t1.dt_mvtc = t3.dt_mvtc and t1.cd_cli = t3.cd_cli
where t1.dt_mvtc between({data_inicial} , {data_final})
''').createOrReplaceTempView("temp_safras_qlt_aux")
但我收到以下错误:
SparkStatementException: "\nmismatched input 'from' expecting <EOF>(line 19, pos 14)\n\n== SQL
==\nselect t2.ANOT_PDA_PRD\n ,t2.VLR_PDA_PRD AS MAX_VLR_PDA\n ,(CASE
t1.cd_gr_mdld_prd_pd\n WHEN 7 THEN t3.DEF_B4\n WHEN 8
THEN t3.DEF_B4\n .................
whi 很多其他的行,但不是完全可读,我相信重要的部分在第一行。但我不知道"\nmismatched input 'from' expecting <EOF>
无论如何应该是什么意思。
所以,问题很简单:出了什么问题?
解决方案
between
语法是BETWEEN 2 AND 5
,试着把你的改成between {data_inicial} and {data_final}
推荐阅读
- windows - 从服务器注销除一个之外的所有用户
- javascript - 如何制作有照片背景的p文字?
- amazon-web-services - 如何防止直接从源下载媒体文件?
- sql - 元素数超过 SQL 数据透视语句中允许的最大值
- jquery - 发送 AJAX 请求时遇到问题,不确定问题出在哪里
- python - 使用 PostgreSQL 和 Flask 但没有 SQLAlchemy
- c++ - STL C++ 中的映射给出了不特定的行为
- c++ - 每当 fs::path 被破坏时出现分段错误
- excel - 启动时多列列表框填充 - 运行时错误
- php - 如何将文件移动到 cpanel 文件夹中