我从CouchDB开始,需要一些帮助。
我有很多数据在表格中列出给用户。用户应该能够通过多个动态参数过滤该数据。
E.g。假设一个表格包含字段日期,作者,标签,is_published,title。
用户应该能够指定任何过滤器,例如“包含标签'couchdb'和is_published = true”或“日期在上个月内且作者是我”。
此类查询如何在CouchDB中运行?
答案 0 :(得分:7)
我认为复杂查询的标准答案是使用Lucene。也许不是你想要的答案,但Lucene拥有更先进的过滤功能。
看看couchdb-lucene on github。在couchDB wiki上还有另一个关于full text indexing的页面。
答案 1 :(得分:3)
开箱即用的解决方案是您在设计文档之前为它们创建这些查询。如果您觉得正确或错误,这会限制您的用户,请按照andyuk的建议并查看couchdb-lucene。
虽然如果你在一些map / reduce查询中找不到你正在寻找的东西,我会怀疑。请记住,您可以在地图功能中多次发射()。