2011-10-11 54 views
8

Tôi có một mục trong cơ sở dữ liệu của tôi trông giống như:MongoDB giá trị lồng nhau truy vấn

{ 
    "_id" : ObjectId("4e93ace3f8208ca743000004"), 
    "title" : "Entry", 
    "domain" : { 
    "_id" : ObjectId("4e9305d5f8208cab43000001"), 
    "name" : "Google" 
    } 
} 

Để truy vấn cho rằng mục cụ thể (hoặc bút toán ghi có sử dụng cùng một tên miền) nó trông như tôi dự định truy vấn sử dụng:

db.entries.find({domain._id : ObjectId("4e9305d5f8208cab43000001")}) 

Tuy nhiên điều này tạo ra một lỗi:

SyntaxError: missing : after property id (shell):1 

Tôi đang làm gì sai trong truy vấn của mình? Thứ hai, làm thế nào tôi có thể chi nhánh này ra PHP?

Trả lời

20

Bạn sẽ cần phải có tên trường trong dấu ngoặc kép, ví dụ:

db.entries.find({ "domain._id" : ... }) 
Các vấn đề liên quan