[ 
https://issues.apache.org/jira/browse/CALCITE-7448?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tamas Mate updated CALCITE-7448:
--------------------------------
    Description: 
Implement support for colon field access syntax in the parser, for example:
{code:java}
v:field
v:field.subfield
v:['field name']
arr[1]:field{code}
Several systems (e.g. Snowflake, Databricks) support this kind of access, and 
with recent VARIANT support in Parquet it seems increasingly relevant for 
interoperability.

One challenge is that ":" is already used in JSON constructor syntax, for 
example:
{code:java}
JSON_OBJECT('k': v)
JSON_OBJECTAGG(k: v){code}
The implementation needs to define how these cases interact, whether through
disambiguation, dialect-specific behavior, or parser configuration.

  was:
Implement support for colon field access syntax in the parser, for example:

 
{code:java}
v:field
v:field.subfield
v:['field name']
arr[1]:field{code}
 

Several systems (e.g. Snowflake, Databricks) support this kind of access, and 
with recent VARIANT support in Parquet it seems increasingly relevant for 
interoperability.

One challenge is that ":" is already used in JSON constructor syntax, for 
example:

 
{code:java}
JSON_OBJECT('k': v)
JSON_OBJECTAGG(k: v){code}
 

The implementation needs to define how these cases interact, whether through
disambiguation, dialect-specific behavior, or parser configuration.


> Support colon-based field/item access syntax
> --------------------------------------------
>
>                 Key: CALCITE-7448
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7448
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>    Affects Versions: 1.41.0
>            Reporter: Tamas Mate
>            Priority: Major
>              Labels: parser
>
> Implement support for colon field access syntax in the parser, for example:
> {code:java}
> v:field
> v:field.subfield
> v:['field name']
> arr[1]:field{code}
> Several systems (e.g. Snowflake, Databricks) support this kind of access, and 
> with recent VARIANT support in Parquet it seems increasingly relevant for 
> interoperability.
> One challenge is that ":" is already used in JSON constructor syntax, for 
> example:
> {code:java}
> JSON_OBJECT('k': v)
> JSON_OBJECTAGG(k: v){code}
> The implementation needs to define how these cases interact, whether through
> disambiguation, dialect-specific behavior, or parser configuration.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to