[
https://issues.apache.org/jira/browse/CALCITE-259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14539471#comment-14539471
]
YeongWei commented on CALCITE-259:
----------------------------------
Hi [~julianhyde],
I have attempted the SINGLE_VALUE for MYSQL into the CASE + SUB-QUERY
equivalent (JdbcRules.java). The strategy is to make use of SqlDialect to
determine which database product is at stake.
A test(JdbcAdapterTest.java) has been added to test if "SINGLE_VALUE" is within
the PLAN and make use of JUnit Annotation to catch exception upon "run" if the
DB is MYSQL.
The test has to be ran with the VM Argument of "-Dcalcite.test.db=MYSQL" and it
makes use of the Mondarian FoodMart data sets.
Please refer to the attached, CALCITE-259-MYSQL-SINGLE_VALUE-0.1.patch.
Let me know your comments.
Thanks!
> Using sub-queries in CASE statement against JDBC tables generates invalid
> Oracle SQL
> ------------------------------------------------------------------------------------
>
> Key: CALCITE-259
> URL: https://issues.apache.org/jira/browse/CALCITE-259
> Project: Calcite
> Issue Type: Bug
> Reporter: GitHub Import
> Labels: github-import
> Attachments: CALCITE-259-MYSQL-SINGLE_VALUE-0.1.patch,
> [CALCITE-259]-Description.patch, [CALCITE-259]-Description.patch
>
>
> 1.
> select e.NAME,
> (CASE e.dept_ID WHEN (Select d.id from PV_ADMIN.dept d where d.id =
> e.dept_id)
> THEN (Select d.name from PV_ADMIN.dept d where d.id = e.dept_id)
> ELSE 'DepartmentNotFound' END ) AS DEPTNAME
> from PV_ADMIN.EMP e;
>
> 2.
> select e.NAME,
> CASE WHEN e.dept_ID = (select d.ID from PV_ADMIN.dept d where d.NAME =
> 'SALES') then 'SALES'
> ELSE 'Not Matched.'
> END as department
> from PV_ADMIN.EMP e ;
> ---------------- Imported from GitHub ----------------
> Url: https://github.com/julianhyde/optiq/issues/259
> Created by: [kunal-mahale|https://github.com/kunal-mahale]
> Labels: duplicate,
> Created at: Fri Apr 25 06:41:04 CEST 2014
> State: open
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)