[
https://issues.apache.org/jira/browse/PHOENIX-167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14158987#comment-14158987
]
James Taylor commented on PHOENIX-167:
--------------------------------------
+1. Wow, this is fantastic, [~maryannxue]. Great work.
For EXISTS, do you push a limit into the joined query? For IN, how are you
handling duplicate rows?
I think we'll need to invest in our test framework soon, as we'll want better
test coverage for all the various combinations. I wonder if we can borrow a
subset of test suite from Apache Derby? Or maybe there are other options?
> Support semi/anti-joins
> -----------------------
>
> Key: PHOENIX-167
> URL: https://issues.apache.org/jira/browse/PHOENIX-167
> Project: Phoenix
> Issue Type: Sub-task
> Reporter: James Taylor
> Assignee: Maryann Xue
> Labels: enhancement
> Attachments: 167.patch
>
>
> A semi-join between two tables returns rows from the first table where one or
> more matches are found in the second table. The difference between a
> semi-join and a conventional join is that rows in the first table will be
> returned at most once. Even if the second table contains two matches for a
> row in the first table, only one copy of the row will be returned. Semi-joins
> are written using the EXISTS or IN constructs.
> An anti-join is the opposite of a semi-join and is written using the NOT
> EXISTS or NOT IN constructs.
> There's a pretty good write-up [here]
> (http://www.dbspecialists.com/files/presentations/semijoins.html) on
> semi/anti joins.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)