【发布时间】:2010-06-17 12:52:08
【问题描述】:
我有一个应用程序,我想使用 NoSQL 数据库,但我仍然想对两个不同的属性进行范围查询,例如 选择时间 T1 和 T2 之间噪声级小于的所有条目X。另一方面,我想使用 NoSQL/Key-Value 存储,因为我的数据非常稀疏和多样化,我不想为可能遇到的每种新数据类型创建新表。
我知道您不能对 Google 数据存储区 (source) 使用多个不等式过滤器。我也知道这个功能要来了(据this)。
我知道这在 CouchDB (source) 中也是不可能的。
我想我也或多或少理解为什么会这样。
现在,这让我想知道.. 所有 NoSQL 数据库都是这种情况吗?其他 NoSQL 系统可以对两个不同的属性进行范围查询吗?
例如,Mongo DB 怎么样?我查看了文档,但我发现的唯一内容是他们的docu 中的以下 sn-p:
请注意,此页面上的任何运算符都可以组合在同一个查询文档中。例如,要查找 j 不等于 3 且 k 大于 10 的所有文档,您可以这样查询:
db.things.find({j: {$ne: 3}, k: {$gt: 10} });
所以他们在两个不同的属性上使用大于和不等于。他们没有说任何关于两个不等式的事情;-)
欢迎任何意见和启发:-)
【问题讨论】:
-
想知道您是否找到了答案?我想知道同样的事情(如果所有 nosql 数据库都有多个不等式过滤器的问题),因为 appengine 仍然没有发布多个不等式过滤器!
标签: mongodb couchdb datastore nosql