MongoDB查询最相似的数组

时间:2018-06-17 15:16:37

标签: mongodb mongodb-query

我在MongoDB集合中有一堆文档,它有一个指纹,由一个序列中的8个布尔组成。我想构建一个查询,它将为我提供7到8个与我的查询类似的布尔值的文档。

所以我的查询将是以下内容:查找具有

的所有文档
fingerPrint = ["true", "false", "true", "true", "true", "true", "false", "true"   ] 

查询将返回两个文档,因为第一个文档序列中的所有布尔值都是正确的,第二个文档序列中的8个布尔值中有7个是正确的。

{ 
    "_id" : ObjectId("5538e75c3cea103b25ff94a3"),
    "name" : "document1",
    "fingerPrint" : [
        "true",
        "false",
        "true",
        "true",
        "true",
        "true",
        "false",
        "true"
    ]
},
{ 
    "_id" : ObjectId("5538e75c3cea103b25ff94a4"),
    "name" : "document2",
    "fingerPrint" : [
        "true",
        "false",
        "true",
        "true",
        "false",
        "true",
        "false",
        "true"
    ]
}

我将如何做到这一点?

Alternativly:有没有更好的存储位数组的方法,并能够更优化地查询集合?

0 个答案:

没有答案