Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for outer joins #9

Open
ghost opened this issue Nov 15, 2012 · 1 comment
Open

Support for outer joins #9

ghost opened this issue Nov 15, 2012 · 1 comment

Comments

@ghost
Copy link

ghost commented Nov 15, 2012

Hi,

is there any discussion about supporting outer joins? i looked a lot in google and i couldn't find it. I know it's because of the non-nullable fields becoming automatically nullable because of the nature of the outer join.

Actually i don't know where to start from, but a previous discussion or notes would be helpful,

Andras

@m4dc4p
Copy link
Owner

m4dc4p commented Nov 15, 2012

I have not seen any discussion about supporting outer joins. I think you
would need to start by determining how outer joins are represented in the
relational calculus (if at all). You would then want to think about how the
type of the query is represented. For example, a left join between T1 and
T2 on the column c1, where c1 is a non-nullable integer column in both
tables, might look like:

Query (Rel (T1.c1 Int) ...) -> Query (Rel (T2.c1 Int) ...) -> Query (Rel
(T1.c1 Int) (T2.c1 (Maybe Int)) ...)

After figuring out the types, you'll need think about how the query gets
"compiled" into SQL, but the types are the most important part.

On Thu, Nov 15, 2012 at 6:26 AM, agyomrey [email protected] wrote:

Hi,

is there any discussion about supporting outer joins? i looked a lot in
google and i couldn't find it. I know it's because of the non-nullable
fields becoming automatically nullable because of the nature of the outer
join.

Actually i don't know where to start from, but a previous discussion or
notes would be helpful,

Andras


Reply to this email directly or view it on GitHubhttps://github.com//issues/9.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant