如何使用congomongo的fetch查询嵌套文档?

时间:2013-01-05 22:48:00

标签: mongodb clojure

我正在使用Clojure和congomongo与mongodb互动。

我在集合测试中有一个文档,其结构如下 -

{:_id #<ObjectId 50e8a4de2b5e29d6f4ab3d66>, :fields {:project {:key "test"}}}

并希望根据嵌入的文档字段进行查询:key

当我运行以下内容时 -

(fetch :test {:fields {:project {:key "test"}}})

我收到了错误 -

“IllegalArgumentException没有为key提供的值:{:fields {:project {:key”test“}}} clojure.lang.PersistentHashMap.createWithCheck(PersistentHashMap.java:89)”

如果我从tha mongodb控制台运行以下命令,则会返回正确的文档 -

db.test.find({"fields" : {"project" : {"key" : "test"}}})

感谢您的任何建议

1 个答案:

答案 0 :(得分:1)

看起来你只是错过了:where keyword

(fetch :test :where {:fields {:project {:key "test"}}})