pyspark 查询的 SQL 等价物
Posted
技术标签:
【中文标题】pyspark 查询的 SQL 等价物【英文标题】:SQL equivalent of pyspark query 【发布时间】:2021-12-15 16:57:42 【问题描述】:假设我有这张桌子
user | variable
1 | 2
1 | 3
2 | 4
我有以下 pyspark 查询
df.groupby("user").agg(F.udf(lambda x: 2 in x)(F.collect_list("variable")))
你知道这在 SQL 中的等价物是什么吗?
【问题讨论】:
pyspark 代码做什么/返回? 如果你解释了想要的结果,提供一个等价物应该很容易。 【参考方案1】:假设 pyspark 只是检查用户是否有一行 variable==2
...
SELECT
user,
MAX(CASE WHEN variable = 2 THEN 1 ELSE 0 END)
FROM
table
GROUP BY
user
更直接地说,假设 HiveQL...
SELECT
user,
array_contains(collect_list(variable), 2)
FROM
table
GROUP BY
user
【讨论】:
以上是关于pyspark 查询的 SQL 等价物的主要内容,如果未能解决你的问题,请参考以下文章