sql >> Database teknologi >  >> NoSQL >> MongoDB

Forespørgsel i et underfelt i documentdb

I Mongo shell kan du bruge $(projektion) operatør:

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

Tilsvarende C#-kode kan se ud som nedenfor:

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();

Du kan også bruge q = Builders<Model>.Filter.Empty hvis du vil have alle dokumenter, selvom de ikke indeholder deliverynum =``999




  1. Hvordan man validerer i Mongoose et array og samtidig dets elementer

  2. Mongoose opretter forbindelse til understøttelse af flere lejemål i node.js

  3. Hvordan søger man efter et nøglemønster i redis-hash?

  4. Sådan får du tilbagekald, når nøglen udløber i REDIS