[英]mongodb - ignore document if one of elements in array matches query
[英]MongoDB Array Query to return documents that matches Most elements in array
要求查詢mongodb的方式是按排序順序返回文檔,其中大多數元素首先在Array中匹配。 范例:
Doc1 : {_id:1,fruits:['apple','orange','banana']}
Doc2 :{_id:1,fruits:['grapes','apple','strawberry']}
如果我在集合中搜索水果:['apple','orange'],則應返回Doc1。 請幫助形成相同的查詢。
根據上述問題的描述,請嘗試在MongoDB shell中執行以下查詢。
db.collection.find{fruits:{$all:['apple','orange']}}
在上面的查詢中,$ all運算符獲取文檔,其中數組字段值與指定數組過濾器中包含的所有值匹配
您將必須使用評分技術來匹配最合適的數組。 在Mongo方面,請使用全文本搜索。 以下鏈接(重復/類似要求)中提供了該解決方案: MongoDB比較數組 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.