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

Sukumaar Mane commented on CALCITE-2552:
----------------------------------------

[~julianhyde] can you please look into the pull request?

> Dialect Specific Order By Field Identifier Resolution
> -----------------------------------------------------
>
>                 Key: CALCITE-2552
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2552
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: KrishnaKant Agrawal
>            Assignee: Julian Hyde
>            Priority: Major
>              Labels: pull-request-available
>
> The Order By Keys when resolved during RelToSql Conversion is hardcoded to 
> fallback to Original Expression instead of an alias(if present)
>   
>  This should be based on the Dialect set in RelToSqlConverter.
>  
>  If the Order By Key is a Projection which was Aliased, the Output query 
> contains the original column name instead of the Alias, which is not allowed 
> in HIVE as valid Order By keys are to be selected from Select List 
> Identifiers only.
>   
>  Generated SQL(Failing in hive!),
> {code:java}
> Select first_name as n1 from emp order by first_name;{code}
> Expected SQL,
> {code:java}
> Select first_name as n1 from emp order by n1;{code}
> The Code Excerpt Responsible for this particular use case:- 
> (SqlImplementor.java:952)
> {code:java}
> public SqlNode field(int ordinal) {
>   final SqlNode selectItem = selectList.get(ordinal);
>   switch (selectItem.getKind()) {
>   case AS:
>     return ((SqlCall) selectItem).operand(0);
>   }
>   return selectItem;
> }{code}
>  
>  I create the TableScan, Projection(with the alias) & Sort in the mentioned 
> order.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to