don't paren-wrap top-level query
This commit is contained in:
parent
92aa49deeb
commit
40d25c8726
1 changed files with 10 additions and 4 deletions
|
|
@ -53,6 +53,8 @@
|
||||||
|
|
||||||
(def ^:dynamic *fn-context?* false)
|
(def ^:dynamic *fn-context?* false)
|
||||||
|
|
||||||
|
(def ^:dynamic *subquery?* false)
|
||||||
|
|
||||||
(def infix-fns
|
(def infix-fns
|
||||||
#{"+" "-" "*" "/" "%" "mod" "|" "&" "^"
|
#{"+" "-" "*" "/" "%" "mod" "|" "&" "^"
|
||||||
"is" "=" ">" ">=" "<" "<=" "<>" "!="
|
"is" "=" ">" ">=" "<" "<=" "<>" "!="
|
||||||
|
|
@ -116,10 +118,14 @@
|
||||||
SqlRaw
|
SqlRaw
|
||||||
(-to-sql [x] (.s x))
|
(-to-sql [x] (.s x))
|
||||||
clojure.lang.IPersistentMap
|
clojure.lang.IPersistentMap
|
||||||
(-to-sql [x] (let [clause-ops (filter #(contains? x %) clause-order)]
|
(-to-sql [x] (let [clause-ops (filter #(contains? x %) clause-order)
|
||||||
(paren-wrap
|
sql-str (binding [*subquery?* true]
|
||||||
(space-join (map (comp #(format-clause % x) #(find x %))
|
(space-join
|
||||||
clause-ops)))))
|
(map (comp #(format-clause % x) #(find x %))
|
||||||
|
clause-ops)))]
|
||||||
|
(if *subquery?*
|
||||||
|
(paren-wrap sql-str)
|
||||||
|
sql-str)))
|
||||||
nil
|
nil
|
||||||
(-to-sql [x] "NULL"))
|
(-to-sql [x] "NULL"))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue