Invalid SQL when filter contains identifier named date

Description

When using a filter such as: @Filter(name = "dateFilter", condition = "(date between :startDate and :endDate)")` the generated SQL is invalid:

... where (datebetween ? and ?)

Activity

Gavin KingSeptember 6, 2024 at 6:28 PM
Edited

This is fixed. In fact, the given code never truly worked properly on older versions of Hibernate, because date was being treated as a keyword and not qualified.

As of H7, it does work, since we now distinguish date and time used as column names from their use as literals/functions.

Guillaume ToisonSeptember 5, 2024 at 7:16 AM

Pull request with issue reproducer:

Fixed

Details

Assignee

Reporter

Worked in

Components

Fix versions

Affects versions

Priority

Created September 5, 2024 at 6:37 AM
Updated March 14, 2025 at 12:42 PM
Resolved September 6, 2024 at 6:29 PM