Skip to content

Support for full set of operators in left outer join on clause  #268

@dakotahNorth

Description

@dakotahNorth

Esper documentation states

If the optional on clause is specified, it may only employ the = equals operator and property names.
Any other operators must be placed in the where-clause. The stream names that appear in the
on clause may refer to any stream in the from-clause

resulting in different results when the where-clause is used because the on-clause only supports ='s since the semantics are different.

From https://stackoverflow.com/questions/4752455/left-join-with-where-clause

When making OUTER JOINs (ANSI-89 or ANSI-92), filtration location matters because criteria specified in the ON clause is applied before the JOIN is made. Criteria against an OUTER JOINed table provided in the WHERE clause is applied after the JOIN is made. This can produce very different result sets. In comparison, it doesn't matter for INNER JOINs if the criteria is provided in the ON or WHERE clauses -- the result will be the same.

This feature request is to add full support for other operators within the on clause.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions