MongoDb $and 具有地理空间请求的操作员
我在系统中工作 Java, 其中部分从内部提交到请求中显示表达式 MongoDb. 我想象一下 "AND" 表达式就像我想象的 "OR" 表达。 因此,如果我有一种表达式 "category='GIBBLY' AND active=true", 它将显示如下:
我理解在这种情况下,没有特别需要。 我无法理解的是什么
某物
案例 $and 需要 /在我的系统中通常会被投资 ANDs 和 ORs, 如果它有一些价值/.
这对我来说是一个问题的原因是运营商 $and, 它似乎不适用于地理空间请求。 这样的请求:
结束错误 "can't find special index: 2d". 如果我 re-do 请求为:
它很棒。
我试图花一些研究,并找到了对这个问题的讨论。
[/url]
, 这提到了讨论
http://www.mongodb.org/display ... dexes
.
我发现的信息都没有解释为什么 $and 它不适用于地理空间请求。 我的数据库和请求中没有定义复合索引 non-$and 作品,所以我不确定 $and 它与索引有关的方式不同。
总结,我的问题如下::
你完全需要吗? $and, 如果是这样,在什么情况下?
谎言不同 $and 与指数相关隐式呈现的一些基本途径?
为什么究竟 $and 不适用于地理空间请求?
{$and:[{"category":"GIBBLY"},{"active":true}]}
我理解在这种情况下,没有特别需要。 我无法理解的是什么
某物
案例 $and 需要 /在我的系统中通常会被投资 ANDs 和 ORs, 如果它有一些价值/.
这对我来说是一个问题的原因是运营商 $and, 它似乎不适用于地理空间请求。 这样的请求:
{"$and":[{"loc":{"$nearSphere":[-79.75 , 43.5], "$maxDistance":0.00156787}}, {"active":true}]}
结束错误 "can't find special index: 2d". 如果我 re-do 请求为:
{"loc":{"$nearSphere":[-79.75 , 43.5], "$maxDistance":0.00156787}, "active":true}
它很棒。
我试图花一些研究,并找到了对这个问题的讨论。
[/url]
, 这提到了讨论
http://www.mongodb.org/display ... dexes
.
我发现的信息都没有解释为什么 $and 它不适用于地理空间请求。 我的数据库和请求中没有定义复合索引 non-$and 作品,所以我不确定 $and 它与索引有关的方式不同。
总结,我的问题如下::
你完全需要吗? $and, 如果是这样,在什么情况下?
谎言不同 $and 与指数相关隐式呈现的一些基本途径?
为什么究竟 $and 不适用于地理空间请求?
没有找到相关结果
已邀请:
2 个回复
窦买办
赞同来自:
有经典 SQL
在操作员的外观之前
这很困难。 您无法执行以下操作:
询问 "looks" 正确但它无效 JSON. 您会注意到我有两个顶级键
. 这个逗号应该代表 "and", 但在这种情况下,它不起作用。
操作员
旨在解决这个问题。
谎言不同 $and 与指数相关隐式呈现的一些基本途径?
它必须在相同的基本查询中编译并使用相同的索引。 如果没有,那绝对是一个错误。
为什么究竟 $and 不适用于地理空间请求?
您所看到的行为可能是一个错误,必须报告:
http://jira.mongodb.org/
/
另外,请不要忘记 MongoDB 它对地理空间索引具有特殊限制。 也许你的请求不使用索引理想的方式。
小明明
赞同来自:
操作员 $and 当您需要在一个字段中放置多个过滤器时,需要我们需要的,这是使用分号语法不可能的。 例如,要查找包含包含数字数组的所有文档 2
和
10, 您需要操作员 $and:
文件:
询问:
虽然没有运营商的请求 $and 只使用 "array: 10" 并返回两种文件:
使用操作员 $and 应该对索引没有影响。 一个索引将用于满足请求。
请随时投票给机票 JIRA, 相关 $and 和地理空间请求,如果它会影响您的请求。