Skip to content

[Bug] Support inclusive end time syntax ] in GROUP BY clause IoTDB 2.0.5 #17108

@amanchaudhary-95

Description

@amanchaudhary-95

Search before asking

  • I searched in the issues and found nothing similar.

Version

OS: Ubuntu 24.04 LTS
IoTDB: 2.0.5

Describe the bug and provide the minimal reproduce step

Currently, the GROUP BY clause in IoTDB strictly uses the left-closed, right-open [start, end) time interval format. Users often need to include the data point exactly at the end time (e.g., [start, end]), but the current syntax does not support using ] to specify an inclusive end time.

When querying time-series data, it is common to want a precise inclusive range (e.g., from 12:00 to 13:00 inclusive). To achieve this now, users must manually extend the end_time by a small fraction (e.g., +1ms) or by a full time interval unit, which is unintuitive and can lead to errors or off-by-one queries.

What did you expect to see?

Support the standard interval syntax ] to denote an inclusive end time in the GROUP BY clause.

Example:
Allow this syntax:

SELECT count(s1) FROM root.sg.d1 
GROUP BY ([2026-01-27T12:00:00, 2026-01-27T13:00:00], 1m)

What did you see instead?

Current syntex doesn't allow ] for end time. I have to use the below syntex:

SELECT count(s1) FROM root.sg.d1 
GROUP BY ([2026-01-27T12:00:00, 2026-01-27T13:00:00), 1m)

but it excludes the value at 13:00:00

Anything else?

Current Workaround:
Users currently have to modify the timestamp manually:

-- Extended by 1ms to capture the last point
GROUP BY ([2026-01-27T12:00:00, 2026-01-27T13:00:00.001), 1m)

Are you willing to submit a PR?

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions