calcite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hongze Zhang <notify...@126.com>
Subject Re: Parsing DB2 sql statements
Date Thu, 06 Jun 2019 12:23:09 GMT
Hi Andrew,

If you are focusing parsing only, I believe you can just use the babel parser - in babel we
have added support for DATE function via CALCITE-3022. The thing is you need to compile Calcite's
code by yourself - 1.20.0 hasn't been released yet. 

Hongze

> On Jun 6, 2019, at 19:06, Andrew O <ao2596599@gmail.com> wrote:
> 
> I'm doing a project trying to parse some IBM DB2 sql expressions (to
> analyze table / column usages).
> 
> To note,
> 1) these are existing ad-hoc user queries so I can't change their syntax
> 2)  I don't have a connection / schema for the database,  but my
> understanding is that this shouldn't be required by Calcite for this
> kind of work.
> 
> Currently I'm hitting some parsing issues with queries like
> 
>    select Date(x.col1), x.col2 from myTable x
> 
> It fails parse at the point of the Date function call. This is trying to
> use the function to convert the value of col1 to a date (almost similar to
> a cast/convert).
> 
> https://www.ibm.com/support/knowledgecenter/en/SSEPEK_11.0.0/sqlref/src/tpc/db2z_bif_date.html
> 
> 
> My current thinking would be that this  may need changes to the parser
> grammar (through an extension?). Or perhaps this could be registered as a
> custom User Defined Function of some kind (although Date seems like a
> reserved word)?
> 
> Is this the right thinking,  or is there another approach I could look at?
> 
> Thanks in advance
> 
> Andrew


Mime
View raw message