【发布时间】:2013-10-15 11:24:47
【问题描述】:
我在使用 mongo-shell 和 Spring Data Mongodb 时遇到了一种奇怪的行为
这是我的示例查询:
> db.substances.find({"precursor.mass": {$gte:159.9900,$lte:160.0100}}).count()
6
所以我想找到给定范围(加/减)内的质量值。在此示例中,输入为 160 +/- 0.01。
这是六个结果中的两个。第一个没问题,但我无法解释和理解为什么会找到第二个结果。
{
"_id" : ObjectId("524bfe80729458abfd7698a5"),
"exactMass" : 159.1259,
"nominalMass" : 159,
"molarMass" : 159.22,
"status" : 1,
"decompositions" : [ ],
"precursor" : [
{
"mass" : 160,
"ion" : "+H",
"charge" : "+",
"fragments" : [
55,
83,
124,
97,
69,
142
]
}
],
}
{
"_id" : ObjectId("524bfe80729458abfd7695be"),
"exactMass" : 159.068414,
"nominalMass" : 159,
"molarMass" : 159.19,
"status" : 0,
"decompositions" : [ ],
"precursor" : [
{
"mass" : 158.0611,
"ion" : "-H",
"charge" : "-",
"fragments" : [ ]
},
{
"mass" : 160.0756,
"ion" : "+H",
"charge" : "+",
"fragments" : [ ]
}
],
}
我忽略了什么?我假设我使用了错误的查询?
我的目标是找到所有前体质量在给定值 +/- 公差之间的物质。
【问题讨论】:
标签: java javascript spring mongodb