[
https://issues.apache.org/jira/browse/CALCITE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17866631#comment-17866631
]
xiong duan commented on CALCITE-6480:
-------------------------------------
[~suibianwanwan33] We can rewrite CASE WHEN in the RelToSql phase maybe
OracleSqlDialect is a good choice. This SQL can run successfully:
{code:java}
select
"EMPNO",
"ENAME",
"JOB",
"MGR",
"HIREDATE",
"SAL",
"COMM",
"DEPTNO"
from SCOTT."EMP" WHERE (CASE
WHEN "ENAME" = 'Sales' THEN 'true'
WHEN "ENAME" = 'HR' THEN 'true'
ELSE 'false'
END) = 'true'; {code}
> OracleDialect does not support CASE WHEN returning boolean
> ----------------------------------------------------------
>
> Key: CALCITE-6480
> URL: https://issues.apache.org/jira/browse/CALCITE-6480
> Project: Calcite
> Issue Type: Wish
> Components: core
> Reporter: kate
> Priority: Minor
>
> Our requirement is to use Calcite to translate queries into different
> dialects. During validation in the TPC-DS scenario, we found that {{Oracle}}
> does not support SQL statements like
> {code:java}
> SELECT * FROM xxx
> WHERE CASE WHEN a > 10 THEN b < 5 ELSE c > 0 END;{code}
> Therefore, we hope to remove such predicates at the dialect like Oracle.
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)