变量值必须传入 Databricks 直接 sql 查询而不是 spark.sql(""" """)

Posted

技术标签:

【中文标题】变量值必须传入 Databricks 直接 sql 查询而不是 spark.sql(""" """)【英文标题】:Variable value has to pass in the Databricks direct sql query instead of spark.sql(""" """) 【发布时间】:2021-09-22 19:19:46 【问题描述】:

在 databricks 笔记本中,我已经编写了查询

%sql 设置四个日期='2021-09-16'; select * from df2_many wherefour_date='​​​​​​​​​​​​​​​​four_date​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

它不起作用,请告知如何在直接查询中应用而不是 spark.sql(""" """)

注意:不要在文本框中使用 $ 其询问值,请确认是否有其他替代解决方案 如何应用要在 Databricks 的直接查询中操作的变量值

【问题讨论】:

***.com/questions/68794549/… 【参考方案1】:

如果您使用的是 Databricks Notebook,则需要使用小部件:

https://docs.databricks.com/notebooks/widgets.html

CREATE WIDGET DATE four_date DEFAULT "2021-09-16"

SELECT * FROM df2_many WHERE four_date=getArgument("four_date")​​​​

【讨论】:

以上是关于变量值必须传入 Databricks 直接 sql 查询而不是 spark.sql(""" """)的主要内容,如果未能解决你的问题,请参考以下文章

请问js里的变量值怎样传入后台?

oracle中如何获取最后执行的SQL语句并绑定变量值

SQL 插入日期时间 变量值

为啥 SQL Server 标量值函数变慢?

如何将变量值与 select 语句的结果一起放入 sql 表中?

如何根据 PL/SQL 变量值检查输入参数值是不是存在作为列表?