Thanks for the pointers,  I'll take a further look.

Andrew

On Mon, 15 Apr 2019, 20:08 Julian Hyde, <[email protected]> wrote:

> If you decide to write a RelOptRule, your rule could perhaps match
> RelNode(Sort) rather than Sort, and therefore the rule will not fire at the
> top-level.
>
> However, you could also do the transformation on RelToSqlConverter, which
> is a more conventional visitor; you can look at the stack to see whether
> you are at the top.
>
> You should add code to the dialect, similar to how
> SqlNode.emulateNullDirection works, and add dialect tests.
>
> Julian
>
>
> > On Apr 14, 2019, at 4:45 AM, Andrew O <[email protected]> wrote:
> >
> > I am trying out Calcite against a DBMS that does not support the limit
> > syntax in nested / sub queries.   (The JOOQ blog captures more details /
> > examples at:
> >
> https://www.jooq.org/doc/3.1/manual/sql-building/sql-statements/select-statement/limit-clause/#N467A6
> > )
> >
> > I'm interested in how I could have similar behaviour in Calcite.  My
> > starting attempt / thinking is that it needs a JDBC rule that re-writes /
> > adjusts Sort operations based on the relevant SqlDialect. However I'm not
> > sure if / how I can match only sorts within nested queries and avoid
> > changing the root / non-nested limit operations.
> >
> >
> > Is this the correct thinking? Is there any relevant examples to look at
> for
> > this?
> >
> > Thanks
> >
> > Andrew
>
>

Reply via email to