python - PySpark:如何在 rdd join 期间从左表中选择 *

标签 python apache-spark pyspark

如何在pyspark join中选择*

impression_rdd.join(
        click_rdd, 
        impression_rdd.session_id == click_rdd.session_id, 
        "left_outer"
    ).select(impression_rdd.*) <------- pseudo code; how do you do this?

基本上,sql 等价物

SELECT impression.* FROM impression LEFT JOIN click on (impression.session_id = click.session_id)

最佳答案

您可以简单地在您的伪代码中添加别名和几个引号:

(impressions.alias("impressions")
    .join(clicks, ["id"], "left_outer")
    .select("impressions.*"))

关于python - PySpark:如何在 rdd join 期间从左表中选择 *,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38034089/

相关文章:

python - 如何从 df.columns 中删除名称?

python - PypeR 问题 "global name ' dump_stdout' 未定义”

列表中项目的 Python 加等于语法错误

scala - 过滤 Spark 数据帧中的多列

python - 在进程池之间共享字典和数组

apache-spark - Spark 和 Hive 之间的 Derby 版本不匹配 : Unable to instantiate org. apache.hadoop.hive.metastore.HiveMetaStoreClient

django - Spark on YARN - 从 Django 提交 Spark 作业

python - 如何连接两个Spark DataFrame并操作它们的共享列?

python - 如何从 pyspark 的列中删除连字符?

python - Spark 缓存和取消持久化订单