You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "bingfeng.guo (Jira)" <ji...@apache.org> on 2020/08/20 06:03:00 UTC

[jira] [Comment Edited] (CALCITE-3589) SqlValidatorException when conformation is set to LENIENT

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

bingfeng.guo edited comment on CALCITE-3589 at 8/20/20, 6:02 AM:
-----------------------------------------------------------------

When I run the following two SQLs on PG, I found that PG will not throw Exception, so I think that PG does not strictly stipulate whether it is group by alias or group by underlying column . I think it is the priority group byunderlying column, if there is no underlying column, then group by alias.

 

``` sql

{{select empno as d from emp group by d}}

{{select empno as d from emp group by empno}}

```


was (Author: bingfeng):
When I run the following two SQLs on PG, I found that PG will not throw Exception, so I think that PG does not strictly stipulate whether it is group by alias or group by underlying column . I think it is the priority group byunderlying column, if there is no underlying column, then group by alias.

 

``` sql

{{select empno as d from emp group by d}}

{{select empno as d from emp group by empno}}

{{```}}

> SqlValidatorException when conformation is set to LENIENT
> ---------------------------------------------------------
>
>                 Key: CALCITE-3589
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3589
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: bingfeng.guo
>            Assignee: bingfeng.guo
>            Priority: Critical
>              Labels: pull-request-available
>         Attachments: 屏幕快照 2019-12-12 下午5.56.24.png
>
>          Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> error occurs conditions (all three conditions must be met):
>  * conformance = LENIENT
>  * The alias of the expression in select is the same as the column name of the column used in the expression
>  * group by or having use the above expression
> {color:#172b4d}a simple example is as follows:{color}
> {color:#ff8b00}SELECT SELLER_ID + 1 AS SELLER_ID, sum(PRICE){color}
>  {color:#ff8b00}FROM TEST_KYLIN_FACT{color}
>  {color:#ff8b00}GROUP BY SELLER_ID + 1{color}
> {color:#172b4d}will change to {color}
> {color:#ff8b00}SELECT SELLER_ID + 1 AS SELLER_ID, sum(PRICE){color}
> {color:#ff8b00} FROM TEST_KYLIN_FACT{color}
> {color:#ff8b00} GROUP BY SELLER_ID + 1 + 1{color}
> {color:#172b4d}after org.apache.calcite.sql.validate.SqlValidatorImpl#expandGroupByOrHavingExpr{color}
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)