提示
Hive SQL 教程 欢迎使用。提供建议、纠错、催更等加作者微信: gairuo123(备注:sql )和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
通常情况下,我们编写 Hive SQL 不是仅使用一次,我们需要有意识地一次解决多个重复的需求,这就要求我们编写更加通用的 SQL,设置变量是一个非常好的办法。
数据分析师在解决业务的需求时,编写的 SQL 需要定期执行,但执行时的一些参数可能不一样,为了解决我们修改 SQL 的问题,可以在 SQL 的代码中加入变量,下次在执行此 SQL 时,不需要动 SQL,只需要在执行框中填入指定变量的值即可。这样做的好处是,代码一次写完不需要再变动。
常见的场景有,Where 子句中的时间日期可以作为变量,因为每次执行可能需要看不同日期的数据。
HUE 等界面,在遇到变量时,会展示变量名输入框,供输入变量值。
变量用于轻松配置查询中的参数。它们可以有两种类型:单值 和 多值。
单值语法为:${variable_name}
select * from web_logs
where country_code = "${country_code}"
变量可以有一个默认值:
select * from web_logs
where country_code = "${country_code=US}"
多值:${variable_name=variable_value1, variable_value2,...}
除了让你输入外,还可以显示一个下拉框,提示文本如 CA。
select * from web_logs
where country_code = "${country_code=CA, FR, US}"
可以更改显示的文本,除了让你输入外,还可以显示一个下拉框,提示文本是圆括号里的内容,如 Canada,传入的值是外边的,如 CA。
select * from web_logs
where country_code = "${country_code=CA(Canada), FR(France), US(United States)}"
效果如图:
对于非文本的值,请省略引号:
select * from boolean_table
where boolean_column = ${boolean_column}
更新时间:2021-06-26 13:41:17 标签:hql sql 变量