From 4aeade3621e1b846e5576f3ae19da23e4bc68a39 Mon Sep 17 00:00:00 2001 From: Daniel Hammerschmid Date: Tue, 28 Apr 2020 15:55:57 +0200 Subject: [PATCH] Fixed a bug regarding nested subqueries Fixed a bug which could occur when using the expression extension with nested subqueries. --- expression_ext.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/expression_ext.go b/expression_ext.go index b4111e47..ec8170d2 100644 --- a/expression_ext.go +++ b/expression_ext.go @@ -108,12 +108,13 @@ func (e *expr) operator(operator string, value interface{}) *expr { return e } - if _, ok := value.(*expr); ok { - e.expr = "(" + e.expr + " " + operator + " (?))" + if vExpr, ok := value.(*expr); ok { + e.expr = "(" + e.expr + " " + operator + " (" + vExpr.expr + "))" + e.args = append(e.args, vExpr.args...) } else { e.expr = "(" + e.expr + " " + operator + " ?)" + e.args = append(e.args, value) } - e.args = append(e.args, value) return e }