2015-03-19 42 views
0

爲什麼這個查詢不起作用?

>db.fs.files.find() 
{ "_id" : ObjectId("550a34129c44a4fa03fb78ea"), "filename" : "mJnB2DhK.png", "contentType" : "binary/octet-stream", "length" : 28297, "chunkSize" : 261120, "uploadDate" : ISODate("2015-03-19T02:27:30.757Z"), "aliases" : null, "metadata" : { "id" : "mJnB2DhK" }, "md5" : "85944f92db940c6590fc8059db91ea16" } 
{ "_id" : ObjectId("550a34ed48f6205504285a3b"), "filename" : "mkPQ6wnY.png", "contentType" : "binary/octet-stream", "length" : 28297, "chunkSize" : 261120, "uploadDate" : ISODate("2015-03-19T02:31:10.069Z"), "aliases" : null, "metadata" : { "id" : "mkPQ6wnY" }, "md5" : "85944f92db940c6590fc8059db91ea16" } 
>db.fs.files.find({"metadata": {"id": { $in: ["mkPQ6wnY","mJnB2DhK"]}}}) 
> 

我找不到對一個此查詢的區別在docs,但我 $比較是在第二層次,但我不認爲這是一個問題MongoDB的。

我猜是一個非常愚蠢的錯誤,但我看不到它。

回答

2

嘗試

db.fs.files.find({"metadata.id": { $in: ["mkPQ6wnY","mJnB2DhK"]}})

+0

您需要使用點(。)運算符在子文件中的字段的情況下, – manojpt 2015-03-19 04:37:25