Như đã hỏi, điều này là không thể. Sự cố máy chủ mà bạn đã liên kết đến vẫn nằm trong "sự cố mà chúng tôi không chắc chắn về" .
MongoDB có một số thông tin về việc sử dụng các mảng và tôi nghĩ đó là một phần của sự phức tạp xung quanh một tính năng như vậy.
Thực hiện truy vấn sau db.foo.find({ 'a.b' : 4 } )
. Truy vấn này sẽ khớp với các tài liệu sau.
{ a: { b: 4 } }
{ a: [ { b: 4 } ] }
Vậy "ký tự đại diện" làm gì ở đây? db.foo.find( { a.* : 4 } )
Nó có khớp với tài liệu đầu tiên không? Còn thứ hai thì sao?
Hơn nữa, điều này có nghĩa là gì về mặt ngữ nghĩa? Như bạn đã mô tả, truy vấn có hiệu quả là "tìm tài liệu trong đó bất kỳ trường nào trong tài liệu đó có giá trị là 4" . Điều đó hơi bất thường.
Có ngữ nghĩa cụ thể nào mà bạn đang cố gắng đạt được không? Có thể một sự thay đổi trong cấu trúc tài liệu sẽ giúp bạn có được truy vấn như ý muốn.