You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Michael Mior (JIRA)" <ji...@apache.org> on 2019/06/07 15:00:01 UTC
[jira] [Resolved] (CALCITE-2968) New AntiJoin relational expression
[ https://issues.apache.org/jira/browse/CALCITE-2968?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Mior resolved CALCITE-2968.
-----------------------------------
Resolution: Fixed
> New AntiJoin relational expression
> ----------------------------------
>
> Key: CALCITE-2968
> URL: https://issues.apache.org/jira/browse/CALCITE-2968
> Project: Calcite
> Issue Type: New Feature
> Reporter: Ruben Quesada Lopez
> Assignee: Ruben Quesada Lopez
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.20.0
>
> Time Spent: 2h 50m
> Remaining Estimate: 0h
>
> The goal of this ticket is to follow the discussion started in CALCITE-2920 (and its [PR|https://github.com/apache/calcite/pull/1110]).
> With the implementation of CALCITE-2920, RelBuilder has now a method to create an AntiJoin. However, since, for the moment, there is no "AntiJoin" expression, the only possibility to build an AntiJoin is using a LogicalCorrelate with SemiJoinType.ANTI, and that's exactly what this method does, for now.
> The idea would be to "generalize" this with the creation of a new AntiJoin (a.k.a. AntiSemiJoin) relational expression. With the implementation of CALCITE-2969 (re-design of join-like expressions), it seems clear that the new AntiJoin expression will be a *LogicalJoin with JoinType=ANTI*. Also, it will have to be verified that:
> - this new AntiJoin works fine in EnumerableConvention with all types of join condition (equi-join, partial equi-join, non equi-join)
> - this new AntiJoin can be correctly transformed into a Correlate (type ANTI) via JoinToCorrelateRule
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)