From 9ffef1d554c61df8a14173215de2e7ea227c2237 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Wed, 21 Jan 2015 19:36:41 +0100 Subject: [PATCH] [#3727] Invalid SQL generated when window definitions from WINDOW clause contain frame clauses --- jOOQ/src/main/java/org/jooq/impl/Function.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/Function.java b/jOOQ/src/main/java/org/jooq/impl/Function.java index 4e95a7e1b6..c343f2e897 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Function.java +++ b/jOOQ/src/main/java/org/jooq/impl/Function.java @@ -358,16 +358,17 @@ class Function extends AbstractField implements ctx.sql(" ") .keyword("over") - .sql(" (") - .visit(window) - .sql(")"); + .sql(" ") + .visit(window); } @SuppressWarnings("unchecked") final QueryPart window(Context ctx) { if (windowSpecification != null) - return windowSpecification; + return DSL.sql("({0})", windowSpecification); + // [#3727] Referenced WindowDefinitions that contain a frame clause + // shouldn't be referenced from within parentheses (in PostgreSQL) if (windowDefinition != null) return windowDefinition;