[
https://issues.apache.org/jira/browse/CALCITE-7123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18029998#comment-18029998
]
Priyanka edited comment on CALCITE-7123 at 10/15/25 8:12 AM:
-------------------------------------------------------------
[~julianhyde] My data set does not include rows where parentName is the empty
string. I only have rows with parentName null or a valid value.
I'm attaching the screenshots of the queries below.
!image-2025-10-15-10-11-07-510.png!
!image-2025-10-15-10-11-22-457.png!
was (Author: JIRAUSER310634):
[~julianhyde] My data set does not include rows where parentName is the empty
string. I only have rows with parentName null or a valid value.
I'm attaching the screenshots of the queries below.
!image-2025-10-15-10-09-28-638.png!
!image-2025-10-15-10-09-55-877.png!
> Query doesn't work as expected when using COALESCE or CASE in the group by
> query
> --------------------------------------------------------------------------------
>
> Key: CALCITE-7123
> URL: https://issues.apache.org/jira/browse/CALCITE-7123
> Project: Calcite
> Issue Type: Bug
> Components: avatica
> Affects Versions: 1.39.0
> Reporter: Priyanka
> Priority: Major
> Attachments: image-2025-08-03-21-12-40-517.png,
> image-2025-08-03-21-13-52-179.png, image-2025-08-03-21-18-10-506.png,
> image-2025-08-14-11-56-16-650.png, image-2025-10-15-10-09-28-638.png,
> image-2025-10-15-10-09-55-877.png, image-2025-10-15-10-11-07-510.png,
> image-2025-10-15-10-11-22-457.png
>
>
> Running the following query directly on the Druid UI returns the expected
> results:
> {code:java}
> SELECT
> FLOOR("__time" TO DAY) AS "createtime.day",
> COALESCE("parentName", "stockName") AS "unitName",
> COUNT(*) AS "count"
> FROM
> "druid"."events"
> WHERE "customerName" = 'x' AND "__time" >=
> TIMESTAMP '2025-05-31 22:00:00.000' AND "__time" <= TIMESTAMP '2025-06-12
> 21:59:59.000'
> AND (FALSE = true OR "fleetName" IN ('y'))
> AND (FALSE = false OR "eventTemplateName" IN
> (null))
> AND (FALSE = false OR "consistNumber" IN (null))
> AND (FALSE = false OR ("parentName" IS NOT NULL
> AND "stockName" IN (null)))
> AND (FALSE = false OR (COALESCE("parentName",
> "stockName") IN (null)))
> AND (FALSE = false OR "locationName" IN (null))
> AND (FALSE = false OR "eventCategory" IN (null))
> AND (FALSE = false OR "eventPriorityName" IN
> (null))
> AND (FALSE = false OR null)
> AND (FALSE = false OR "active" = null)
> GROUP BY FLOOR("__time" TO DAY) ,
> COALESCE("parentName", "stockName") {code}
> But when it goes through Calcite, it returns the stockName always as the
> unitName, even if the parentName is available.
> Testing with CASE instead of COALESCE or using a CAST for the type also
> didn't have any effect with Calcite.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)