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

[jira] [Updated] (CALCITE-3247) wrong sql format when transforming ANSI sql to hive sql

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

Jacky Woo updated CALCITE-3247:
-------------------------------
    Description: 
Let's assume sql = SELECT SUBSTRING('ABC', 2)

When we use HiveSqlDialect and transform "sql", we expect SUBSTRING(' abc', 2),but get SUBSTRING(' abc' FROM 2) which is incorrect  sql format in hive.

So maybe HiveSqlDialect behavior should be changed when transform function SUBSTRING:
 # {{SELECT SUBSTRING('ABC', 2)  =>  SELECT SUBSTRING('ABC', 2)}}
 # {{SELECT SUBSTRING('ABC', 2, 3)  =>  SELECT SUBSTRING('ABC', 2, 3) }}
 # {{SELECT SUBSTRING('ABC' FROM 2) => SELECT SUBSTRING('ABC', 2) }}
 # {{SELECT SUBSTRING('ABC' FROM 2 FOR 3) => SELECT SUBSTRING('ABC', 2, 3) }}

 

  was:
When we use HiveSqlDialect and transform "sql", we expect SUBSTRING(' abc', 2),but get SUBSTRING(' abc', 2) which is incorrect  sql format in hive.

So maybe HiveSqlDialect behavior should be changed when transform function SUBSTRING:
 # {{SELECT SUBSTRING('ABC', 2)  =>  SELECT SUBSTRING('ABC', 2)}}
 # {{SELECT SUBSTRING('ABC', 2, 3)  =>  SELECT SUBSTRING('ABC', 2, 3) }}
 # {{SELECT SUBSTRING('ABC' FROM 2) => SELECT SUBSTRING('ABC', 2) }}
 # {{SELECT SUBSTRING('ABC' FROM 2 FOR 3) => SELECT SUBSTRING('ABC', 2, 3) }}

 


> wrong sql format when transforming ANSI sql to hive sql
> -------------------------------------------------------
>
>                 Key: CALCITE-3247
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3247
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.19.0
>            Reporter: Jacky Woo
>            Priority: Minor
>
> Let's assume sql = SELECT SUBSTRING('ABC', 2)
> When we use HiveSqlDialect and transform "sql", we expect SUBSTRING(' abc', 2),but get SUBSTRING(' abc' FROM 2) which is incorrect  sql format in hive.
> So maybe HiveSqlDialect behavior should be changed when transform function SUBSTRING:
>  # {{SELECT SUBSTRING('ABC', 2)  =>  SELECT SUBSTRING('ABC', 2)}}
>  # {{SELECT SUBSTRING('ABC', 2, 3)  =>  SELECT SUBSTRING('ABC', 2, 3) }}
>  # {{SELECT SUBSTRING('ABC' FROM 2) => SELECT SUBSTRING('ABC', 2) }}
>  # {{SELECT SUBSTRING('ABC' FROM 2 FOR 3) => SELECT SUBSTRING('ABC', 2, 3) }}
>  



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