MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Abfragen eines Teilfelds in documentdb

In der Mongo-Shell können Sie den $(projection) verwenden Betreiber:

db.collection.find({ "doc.deliverynum": "999" }, { "doc.$": 1 })

Entsprechender C#-Code kann wie folgt aussehen:

var q = Builders<Model>.Filter.ElemMatch(x => x.doc, d => d.deliverynum == "999");
var p = Builders<Model>.Projection.ElemMatch(x => x.doc, d => d.deliverynum == "999");

var data = Col.Find(q).Project(p).ToList();

Sie können auch q = Builders<Model>.Filter.Empty verwenden wenn Sie alle Dokumente erhalten möchten, auch wenn sie deliverynum =``999 nicht enthalten