You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Xurenhe (JIRA)" <ji...@apache.org> on 2019/08/06 14:08:00 UTC

[jira] [Commented] (CALCITE-2906) Record DOT extension does not distinguish between simple and compound identifiers

    [ https://issues.apache.org/jira/browse/CALCITE-2906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16901094#comment-16901094 ] 

Xurenhe commented on CALCITE-2906:
----------------------------------

[~walterddr]
Sorry, I am free until today.

I have reviewed the issue of CALCITE-2721.
I guess the method of “Expression2b” should be refactored to support this case.
{code:java}
//代码占位符
tbl.foo(0).col.bar => `TBL`.`FOO`(0).`COL`.`BAR`
{code}
Please point out my mistake if my understanding is wrong.

> Record DOT extension does not distinguish between simple and compound identifiers
> ---------------------------------------------------------------------------------
>
>                 Key: CALCITE-2906
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2906
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Rong Rong
>            Priority: Major
>
> Currently the DOT extensions only supports Simple Identifiers:
> For example:
> * *{{tbl.foo(0).col.bar}}* is parsed as: *{{((`TBL`.`FOO`(0).`COL`).`BAR`)}}*
> However, this is not the case in regular Expression field, for example:
> * *{{tbl.col.bar}}* is parsed as: *{{`TBL`.`COL`.`BAR`}}*
> Parser should support both compound identifier, and simple identifier chain after a record type SqlNode.
> Similarly, parsing should also be consistent for other types of expression, for example
> * *{{tbl.arr[0].foo.bar}}* is currently parsed as: *{{((`TBL`.`ARR`[0].`FOO`).`BAR`)}}*



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)