You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2025/06/30 12:22:00 UTC
[jira] [Updated] (CALCITE-7081) Invalid unparse for cast to nested type in ClickHouse
[ https://issues.apache.org/jira/browse/CALCITE-7081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated CALCITE-7081:
------------------------------------
Labels: pull-request-available (was: )
> Invalid unparse for cast to nested type in ClickHouse
> -----------------------------------------------------
>
> Key: CALCITE-7081
> URL: https://issues.apache.org/jira/browse/CALCITE-7081
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.40.0
> Reporter: Yu Xu
> Assignee: Yu Xu
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.41.0
>
>
> Sql in ClickHouse:
> {code:java}
> select cast(array['a','b','c'] as varchar array;{code}
> in ClickHouse would error:
> {code:java}
> Code: 62. DB::Exception: Syntax error: failed at position 258 ('(') (line 5, col 12): (array['a','b','c'] as varchar array;. Unmatched parentheses: ( {code}
> should convert to:
> {code:java}
> SELECT CAST(array('a', 'b', 'c') AS Array(`String`));{code}
> result:
> {code:java}
> ['a','b','c'] {code}
> Map also can not convert right.
>
> sql:
> {code:java}
> select cast(array[MAP['a','1'],MAP['b','2'],MAP['c','3']] as MAP<varchar,varchar> array); {code}
> in ClickHouse would error:
> {code:java}
> Code: 62. DB::Exception: Syntax error: failed at position 383 (',') (line 9, col 26): ,'1'],MAP['b','2'],MAP['c','3']] as MAP<varchar,varchar> array); . Expected one of: DoubleColon, LIKE, GLOBAL NOT IN, end of query, AS, DIV, IS, OR, QuestionMark, BETWEEN, NOT LIKE, MOD, AND, alias, IN, ILIKE, NOT ILIKE, NOT, token, NOT IN, GLOBAL IN {code}
> should convert to:
> {code:java}
> SELECT CAST(array(map('a', '1'), map('b', '2'), map('c', '3')) AS Array(Map(`String`, `Nullable(String)`))) ;{code}
> result:
> {code:java}
> [{'a':'1'},{'b':'2'},{'c':'3'}] {code}
> we can find that in such like ClickHouse databasesystem, {*}Map/Array are c{*}{*}ase sensitive{*},we
> need to write the words accurately.
> we can refer:
> [https://clickhouse.com/docs/sql-reference/data-types/array]
> https://clickhouse.com/docs/sql-reference/data-types/map
--
This message was sent by Atlassian Jira
(v8.20.10#820010)