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

TJ Banghart commented on CALCITE-5616:
--------------------------------------

[~tanclary] - this might relate to some of work on CALCITE-5449

> Allow unparsing of SqlIntervalQualifier in EXTRACT to be overridden by 
> dialects
> -------------------------------------------------------------------------------
>
>                 Key: CALCITE-5616
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5616
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>            Reporter: TJ Banghart
>            Priority: Minor
>
> In {{SqlExtractFunction#unparse}}, the first operand is passed to  
> {{SqlIntervalQualifier.asIdentifier}} which returns a {{SqlIdentifier}} [if 
> the operand is a 
> {{SqlIntervalQualifier}}|https://github.com/apache/calcite/blob/5c7be55ffee836366dcc7fefb6adfc0b8c47465f/core/src/main/java/org/apache/calcite/sql/SqlIntervalQualifier.java#L1366-L1370].
>  
> {{SqlIdentifier#unparse}} is handled by 
> [{{SqlUtil#unparseSqlIdentifierSyntax}}|https://github.com/apache/calcite/blob/5c7be55ffee836366dcc7fefb6adfc0b8c47465f/core/src/main/java/org/apache/calcite/sql/SqlUtil.java#L384-L412]
>  which has no dialect context.
> We should unparse these interval identifiers in the target dialect using the 
> [existing {{SqlDialect#unparseSqlIntervalQualifier}} 
> method|https://github.com/apache/calcite/blob/5c7be55ffee836366dcc7fefb6adfc0b8c47465f/core/src/main/java/org/apache/calcite/sql/SqlDialect.java#L492-L538].
>  This would help prevent errors when unparsing interval identifiers for some 
> dialects. 
> For example, BigQuery uses {{DAYOFWEEK}} rather than {{DOW}} but there is 
> currently no way to override this in {{BigQuerySqlDialect}}.



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

Reply via email to