我正在运行一个返回单个数字的查询,例如35。
我想将此号码存储在clojure中,
然后获得该值的20%并保存该数字。
我希望能够通过20%的数字将这个20%的值传递给LIMIT的查询。
这是基于帕累托分析的查询的原因。
任何人都可以帮忙吗?
查询(str“SELECT COUNT(Application)AS NUMBER FROM AppTable”)
麻木(地图#(获取%“数字”)查询)
然后需要将num除以5,使用此值保存一个新数字并使用它传递给查询。
答案 0 :(得分:0)
问题是你的意思是“然后”。这都是同一个操作的一部分吗?如果是这样,请使用以下内容:
(let [query-result (my-query ...)
one-fifth (double (* 0.2 query-result))]
(my-other-queries one-fifth ...))
如果要独立于第一个查询执行最终查询,则可能必须使用某种可变状态,例如: atom
:
(def query-result (atom nil))
...
(reset! query-result (my-query ...))
...
(my-other-queries (double (* 0.2 @query-result)) ...)
请注意,您始终可以从原始查询结果生成20%的值。此外,在运行query-result
之前,请更好地检查my-other-queries
是否确实包含值。