Awesome, thanks!

David

On Thu, Mar 26, 2020 at 4:02 PM Julian Hyde <[email protected]> wrote:

> There are a few related concepts that make up the general idea of
> "dialect":
> * *dialect* determines how the JDBC adapter convert SqlNodes to SQL
> (e.g. generate "LIMIT 5" or "FETCH 5 ROWS")
> * *conformance* determines what features the validator will allow
> (e.g. does "GROUP BY 1" mean group by the first field or the literal
> 1)
> * *parserConfig* parameters control the parser, for example
> identifiers (quoted using brackets, or back-ticks or double-quotes),
> and how it treats the case of quoted and unquoted identifiers
> * *library* is a set of built-in functions. For example, you might
> want to use standard SQL functions plus Oracle's function set (e.g.
> DECODE)
> * *type system* determines things such as what is the maximum length
> of a VARCHAR value
>
> These are intentionally kept separate in the code. We built a bridge
> between dialect parserConfig in
> https://issues.apache.org/jira/browse/CALCITE-3050. It's worth reading
> that issue for the back-story.
>
> To parse Teradata SQL, you probably need to create a library (for
> functions) and a conformance. Maybe a new constant Lex.TERADATA.
>
> Julian
>
>
> If you want to parse Tera
>
> On Thu, Mar 26, 2020 at 3:44 PM David Valenzuela Rodriguez
> <[email protected]> wrote:
> >
> > Hi!
> >
> > I'm currently evaluating the Apache Calcite framework for the purposes of
> > parsing Teradata SQL. As far as I can tell, this is accomplished by
> > defining a SqlOperatorTable with TD-specific operators. Other than that,
> > I'm not really sure how to integrate that SqlOperatorTable into the
> > Parser/Planner. Are there any guidelines or examples of this? I haven't
> > really seen this, but I assume this is not something new.
> >
> > Thanks in advance!
> >
> > --
> > David Valenzuela
> > Software Engineer | Data & Discovery | GROUPON
> > mobile 425.614.5243
> > [email protected]
>


-- 
David Valenzuela
Software Engineer | Data & Discovery | GROUPON
mobile 425.614.5243
[email protected]

Reply via email to