Skip to content

FULL OUTER JOIN is rendering as LEFT OUTER JOIN #160

@windiana42

Description

@windiana42

While testing with various database backends, I noticed, that ibm_db_sa is not rendering FULL OUTER JOIN correctly. Sorry, that I don't give reproducing code here, but it is quite obvious from the implementation that ibm_db_sa cannot render a FULL OUTER JOIN. It does not look at join.full:

https://github.com/ibmdb/python-ibmdbsa/blob/master/ibm_db_sa/base.py#L472-L480

    def visit_join(self, join, asfrom=False, **kwargs):
        # NOTE: this is the same method as that used in mysql/base.py
        # to render INNER JOIN
        return ''.join(
            (self.process(join.left, asfrom=True, **kwargs),
             (join.isouter and " LEFT OUTER JOIN " or " INNER JOIN "),
             self.process(join.right, asfrom=True, **kwargs),
             " ON ",
             self.process(join.onclause, **kwargs)))

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions