簡體   English   中英

查詢嵌入列表中的數組

[英]Querying for array in embedded list

假設我有一個類似於以下內容的 mongo 文檔:

{
   'foo':1
   'listOfLists' : [ [1,2],[3,4] ]
}

(是的,我知道這不是它“真正”的樣子,但為了解釋目的,它應該足夠簡單。)

如果我想編寫一個查詢來檢查listOfLists 列表對象是否包含[3,4] 的組合,我該怎么做呢?

我可以做類似的事情嗎

collection.find({'listsOfLists' : {'$elemMatch' : [3,4] } })
collection.find({ 'listsOfLists': [3,4] }).

這只是財產上的“直接匹配”。 MongoDB 會自動查看每個數組元素。 你不需要$elemMatch在這里。

如果要使用它,則需要一個運算符表達式,例如$eq

collection.find({ 'listsOfLists': { '$elemMatch': { '$eq': [3,4] } } }).

但這當然不是必需的,除非有“兩個或更多”條件實際上需要在數組元素上匹配。 這就是$elemMatch實際上的用途。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM