[
https://issues.apache.org/jira/browse/CALCITE-6979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yu Xu updated CALCITE-6979:
---------------------------
Description:
IS TRUE/ IS FALSE/IS NOT TRUE/IS NOT FALSE can not support in ClickHouse
System(test with all versions about it).
such as:
{code:java}
SELECT CAST(1 AS DECIMAL(12, 2)) > 0.00 IS TRUE; {code}
would error out:
{code:java}
Code: 62. DB::Exception: Syntax error: failed at position 824 (TRUE) (line 24,
col 44): TRUE; {code}
and convert to IS NOT NULL and BOOLEAN can work well:
{code:java}
select CAST(1 AS DECIMAL(12, 2)) > 0.00 IS NOT NULL AND CAST(1 AS DECIMAL(12,
2)) > 0.00;
> 1 {code}
*we should convert the syntax as:*
BOOLEAN IS TRUE: BOOLEAN IS NOT NULL AND BOOLEAN
BOOLEAN IS FALSE: BOOLEAN IS NOT NULL AND NOT BOOLEAN
BOOLEAN IS NOT TRUE: BOOLEAN IS NULL OR NOT BOOLEAN
BOOLEAN IS NOT FALSE: BOOLEAN IS NULL OR NOT BOOLEAN
was:
IS TRUE/ IS FALSE/IS NOT TRUE/IS NOT FALSE can not support in ClickHouse
System.
such as:
{code:java}
SELECT CAST(1 AS DECIMAL(12, 2)) > 0.00 IS TRUE; {code}
would error out:
{code:java}
Code: 62. DB::Exception: Syntax error: failed at position 824 (TRUE) (line 24,
col 44): TRUE; {code}
and convert to IS NOT NULL and BOOLEAN can work well:
{code:java}
select CAST(1 AS DECIMAL(12, 2)) > 0.00 IS NOT NULL AND CAST(1 AS DECIMAL(12,
2)) > 0.00;
> 1 {code}
*we should convert the syntax as:*
BOOLEAN IS TRUE: BOOLEAN IS NOT NULL AND BOOLEAN
BOOLEAN IS FALSE: BOOLEAN IS NOT NULL AND NOT BOOLEAN
BOOLEAN IS NOT TRUE: BOOLEAN IS NULL OR NOT BOOLEAN
BOOLEAN IS NOT FALSE: BOOLEAN IS NULL OR NOT BOOLEAN
> Invalid unparse for IS TRUE,IS FALSE,IS NOT TRUE and IS NOT FALSE in
> ClickHouseDialect
> --------------------------------------------------------------------------------------
>
> Key: CALCITE-6979
> URL: https://issues.apache.org/jira/browse/CALCITE-6979
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.39.0
> Reporter: Yu Xu
> Assignee: Yu Xu
> Priority: Major
> Fix For: 1.40.0
>
>
> IS TRUE/ IS FALSE/IS NOT TRUE/IS NOT FALSE can not support in ClickHouse
> System(test with all versions about it).
> such as:
> {code:java}
> SELECT CAST(1 AS DECIMAL(12, 2)) > 0.00 IS TRUE; {code}
> would error out:
> {code:java}
> Code: 62. DB::Exception: Syntax error: failed at position 824 (TRUE) (line
> 24, col 44): TRUE; {code}
> and convert to IS NOT NULL and BOOLEAN can work well:
> {code:java}
> select CAST(1 AS DECIMAL(12, 2)) > 0.00 IS NOT NULL AND CAST(1 AS DECIMAL(12,
> 2)) > 0.00;
> > 1 {code}
>
> *we should convert the syntax as:*
> BOOLEAN IS TRUE: BOOLEAN IS NOT NULL AND BOOLEAN
> BOOLEAN IS FALSE: BOOLEAN IS NOT NULL AND NOT BOOLEAN
> BOOLEAN IS NOT TRUE: BOOLEAN IS NULL OR NOT BOOLEAN
> BOOLEAN IS NOT FALSE: BOOLEAN IS NULL OR NOT BOOLEAN
--
This message was sent by Atlassian Jira
(v8.20.10#820010)