0
我有一組動態生成的參數在地圖上像科爾馬:OR符號動態生成的where子句
(def clauses {:apples 23 :plums 0 :bananas 7})
一種形式,我想有它在where
聲明或運算,所以應該成爲科爾馬查詢的等效:
(select fruit-shop
(where (or {:apples 23}
{:plums 0}
{:bananas 7})))
生成地圖的名單是很容易的:
(map #(apply array-map %)
(into [] clauses))
但是不能使用(or
語句應用於它,因爲它在宏擴展時處理,在clauses
被綁定到它的值之前。
在這種情況下應該使用什麼聲明?