将 pyspark 翻译成 sql

Translating pyspark into sql

提问人:PracticingPython 提问时间:8/17/2022 更新时间:8/17/2022 访问量:352

问:

我遇到以下功能的问题。我正在尝试将其转换为 SQL 语句,以便我可以更好地了解到底发生了什么,这样我就可以更有效地处理我的实际问题。

我知道它包含valid_data到ri_data之间的连接、过滤器和 select 语句。我主要是在理解如何编写连接文章方面遇到问题。

        result = (
            valid_data.join(
                ri_data,
                F.col(table_name + "." + column_name) == ri_data.ri_column,
                "left_outer",
            )
            .filter(f"ri_column IS NULL")
            .selectExpr(
                "etl_row_id AS row_id", f"{table_name}.{column_name} AS error_value"
            )
            .distinct()

任何帮助都是值得赞赏的。

SQL pyspark

评论


答:

1赞 Josh 8/17/2022 #1

您需要进行一些替换,例如连接键的column_name等。但是在 SQL 中,一般结构如下所示:

SELECT DISTINCT A.*,
A.etl_row_id AS row_id,
A.column_name AS error_value
FROM valid_data A
LEFT OUTER JOIN ri_data B
ON A.column_name = B.ri_column
WHERE B.ri_column IS NULL