Postmodern 不知道大家熟不熟,我看它的操作好像有点点复杂,所以我改成大部分的数据操作都是现在在Postgres 里创造一个函数,然后再在Lisp代码里用Postmodern去调用
但是我现在参数在一个列表里,能不能像Lisp 的 apply 一样把这个列表穿进去,例如:
假如我有一个 psql 的函数 fn(a, b, c), Postmodern 里能不能类似:
(let ((lst '(1 2 3)))
(sql (:select '* :from (:fn ,@lst))))
因为我现在习惯了尽量避免重复很类似的代码啊~~
另外想要实现个
…WHERE id IN (1, 2 3)
:where (:in 'id '(1 2 3))
:where (:in 'id #(1 2 3))
:where (:in 'id (values 1 2 3))
都不行啊?
文档和Google都找遍了都没有,难道很少人用 IN 加上变量吗?
只能用any*
(:any* #(1 2 3))
谢谢班长 我也是搜了的,不过搜的是本地下载好的官方文档,没有找到:
我谷歌输入`postmodern :in’ 这关键字大多都是关联到 insert,所以没搜到。。。
你发的这个有,那里写着 set 我就以为指 Commn Lisp 的 set (也就是不重复元素的 list),没有详细从头到尾看着文档,大多都是通过关键字来(在我本地这文档)搜索。。。