gpt4 book ai didi

python - 如何在 pyspark 中使用 "where not exists"SQL 条件?

转载 作者:行者123 更新时间:2023-12-02 00:23:48 33 4
gpt4 key购买 nike

我在 Hive 上有一个表,我正试图在该表中插入数据。
我正在从 SQL 中获取数据,但我不想插入 Hive 表中已经存在的 ID。我正在尝试使用与不存在的地方相同的条件。我在 Airflow 上使用 PySpark

最佳答案

exists 运算符在 Spark 中不存在,但有 2 个 join operators可以替代它的:left_antileft_semi

例如,如果您想在配置单元表 target 中插入一个数据帧 df,您可以这样做:

new_df = df.join(
spark.table("target"),
how='left_anti',
on='id'
)

然后在表中写入 new_df

left_anti 允许您只保留不满足连接条件的行(相当于不存在)。 exists 的等价物是 left_semi

关于python - 如何在 pyspark 中使用 "where not exists"SQL 条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54550161/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com