5

例如 Lucene 查询是(euid:3) AND (sev:0),但 Mongo 无法理解。

是否可以将 Lucene 查询转换为 Mongo 理解形式?

4

2 回答 2

0

在 MongoDB 中的语法是:

   db.collectionName.find( { "euid" : 2, "sev" : 0 } );

逗号分隔的条件被视为“AND”,因此上述语法表示在集合中找到我的文档,其中 euid 等于 2 且 sev 等于 0。

于 2014-01-10T23:29:17.497 回答
0

Lucene 包含一个查询解析器,可以相对直接地将 lucene 查询转换为 Mongo 查询。

您必须小心输入 mongo 搜索词(“1.0”!= 1.0F),您可能无法获得预期的结果。

有关示例查询转换器,请查看 scaleset-search API 中包含的 MongoQueryConverter。如果有兴趣,我可以将它作为一个独立的库发布,可以使用或不使用 Jongo。

https://github.com/scaleset/scaleset-search/blob/master/src/main/java/com/scaleset/search/mongo/MongoQueryConverter.java

于 2015-02-04T19:25:31.127 回答