From 346a06ed8ee8e1f00fc4474ceccb32cc39255d85 Mon Sep 17 00:00:00 2001 From: Yannick Brandt Date: Wed, 11 Dec 2024 11:21:41 +0100 Subject: [PATCH 1/2] Fix Hql-Queries using CEILING and LN. --- .../springframework/data/jpa/repository/query/Hql.g4 | 2 ++ .../jpa/repository/query/HqlQueryRendererTests.java | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 b/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 index 728ef8ca22..6323874881 100644 --- a/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 +++ b/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 @@ -1133,6 +1133,7 @@ reservedWord | BY | CASE | CAST + | CEILING | COLLATE | CONTAINS | COUNT @@ -1206,6 +1207,7 @@ reservedWord | LIMIT | LIST | LISTAGG + | LN | LOCAL | LOCAL_DATE | LOCAL_DATETIME diff --git a/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java b/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java index 99547994e1..f0292b26eb 100644 --- a/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java +++ b/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java @@ -1509,6 +1509,16 @@ select round(count(ri) * 100 / max(ri.receipt.positions), 0) as perc }); } + @Test + void ceilingFunctionShouldWork() { + assertQuery("select ceiling(1.5) from Element a"); + } + + @Test + void lnFunctionSouldWork() { + assertQuery("select ln(7.5) from Element a"); + } + @Test // GH-2981 void cteWithClauseShouldWork() { From bff9fc26804c8f30bc3ab8f0b150b4cf3cd34501 Mon Sep 17 00:00:00 2001 From: Yannick Brandt Date: Wed, 11 Dec 2024 11:26:34 +0100 Subject: [PATCH 2/2] Fill the author field. --- .../antlr4/org/springframework/data/jpa/repository/query/Hql.g4 | 2 +- .../data/jpa/repository/query/HqlQueryRendererTests.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 b/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 index 6323874881..80e9297840 100644 --- a/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 +++ b/spring-data-jpa/src/main/antlr4/org/springframework/data/jpa/repository/query/Hql.g4 @@ -25,7 +25,7 @@ grammar Hql; * management of complex rules in the generated Visitor. Finally, there are labels applied to rule elements (op=('+'|'-') * to simplify the processing. * - * @author Greg Turnquist + * @author Greg Turnquist, Yannick Brandt * @since 3.1 */ } diff --git a/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java b/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java index f0292b26eb..2f9dd07363 100644 --- a/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java +++ b/spring-data-jpa/src/test/java/org/springframework/data/jpa/repository/query/HqlQueryRendererTests.java @@ -37,7 +37,7 @@ * * @author Greg Turnquist * @author Christoph Strobl - * @author Mark Paluch + * @author Mark Paluch, Yannick Brandt * @since 3.1 */ class HqlQueryRendererTests {