[
https://issues.apache.org/jira/browse/CALCITE-2233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Piotr Bojko updated CALCITE-2233:
---------------------------------
Description:
Consider following queries
SELECT * FROM A WHERE A.ID IN (SELECT B.ID FROM B)
SELECT A.* FROM A JOIN B ON A.ID = B.ID
When A.ID is NUMERIC(18,0) and B.ID is BIGINT - first query produces empty
results while the latter produces proper results.
Following works as desired:
SELECT * FROM A WHERE CAST(A.ID AS BIGINT) IN (SELECT B.ID FROM B)
was:
Consider following queries
SELECT * FROM A WHERE A.ID IN (SELECT B.ID FROM B)
SELECT A.* FROM A JOIN B ON A.ID = B.ID
When A.ID is NUMERIC(18,0) and B.ID is BIGINT - first query produces empty
results while the latter produces proper results.
> IN clause does not follow type semantics like JOIN
> --------------------------------------------------
>
> Key: CALCITE-2233
> URL: https://issues.apache.org/jira/browse/CALCITE-2233
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.16.0, 1.17.0
> Reporter: Piotr Bojko
> Assignee: Julian Hyde
> Priority: Major
>
> Consider following queries
> SELECT * FROM A WHERE A.ID IN (SELECT B.ID FROM B)
> SELECT A.* FROM A JOIN B ON A.ID = B.ID
> When A.ID is NUMERIC(18,0) and B.ID is BIGINT - first query produces empty
> results while the latter produces proper results.
> Following works as desired:
> SELECT * FROM A WHERE CAST(A.ID AS BIGINT) IN (SELECT B.ID FROM B)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)