2011-03-24 164 views
1

這裏有些東西我不太明白。Mongodb陣列結構

當我試圖查詢具有多個字段的對象時,我得不到任何結果。對象結構是這樣的:

{ 
    "_id" : ObjectId("4d8b55f017a7303b0b000000"), 
    "title" : "Apollo", 
    "body" : "A spaceflight mission to the moon", 
    "tags" : [ [ "moon", "space", "nasa", "mission" ] ] 
} 

這是我的查詢:

db.test.find({ tags: { $all: ['moon', 'mission'] } }) 

但是我得到通過用單場創建新對象的結果是:

{ 
    "_id" : ObjectId("4d8b9e5935037b3c8228709c"), 
    "tags" : [ "apple", "banana", "pear" ] 
} 

..使用與上面相同的查詢。

['tags']不嵌套在任何其他數組中,爲什麼它不返回我的搜索查詢?請賜教。

真誠, 爲什麼

回答

3

你爲什麼要使用一個嵌套的數組

「標籤」:[ 「月亮」, 「空間」, 「NASA」, 「使命」]]

這裏?

這沒有任何意義。

+0

我現在解決了。這是更普遍的問題是的。 – why 2011-03-24 20:45:07

0
db.test.find({ tags: { $all: [ ['moon', 'mission'] ] } })