Skip to content

Push down all JOIN expressions as JOIN expressions #253

@theory

Description

@theory

Currently, foreign_join_ok() uses only JOIN key expressions in INNER JOIN and SEMI JOIN expressions: that is, only expressions that reference both the right and left keys using the equality operator. The rest are appended to remote conditions for use in the WHERE clause.

I suspect that ClickHouse used to allow only join key expressions but opened it up to additional expressions later. Today at least one must be a join key expression but other expressions are allowed.

Would it make sense to allow all expressions to be pushed down as JOIN expressions, rather than filtering some to remote conditions (the WHERE clause)? Seems like there might be some efficiencies in that, although maybe the ClickHouse optimizer adjusts appropriately to save cycles and iops?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpushdownImprovements to query pushdown

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions