databricks/spark SQL 中的动态枢轴?

use*_*107 6 sql pivot apache-spark-sql databricks

在 SQL(databricks/spark SQL)中进行透视时,有没有办法动态设置 for-in 的“in”部分?

例如,这段代码:

select *
from (select office, country, revenue from sales)
pivot (
  sum(revenue)
  for country in ('US', 'CA', 'UK') 
) 
Run Code Online (Sandbox Code Playgroud)

...工作正常,但该country列每个月都会有不同的值,所以我不想每次都查找并重新编写代码。我尝试将countryselect distinct country from sales放在那里,但这些不起作用。有任何想法吗?

Ste*_*eve -1

我正在简化为使用动态雕刻的 IN() 列表构建查询的字符串。有点令人失望。但这种技术也意味着我可以动态地应用合理的旋转别名。但我不确定这是否可以在 pyspark -v- Spark SQL 中更好地完成