sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB slice dotaz do golang

Pomocí Collection.Find() můžete pouze specifikovat filtr. Ale to, co máte, je projekce:

{"contr":{$slice:[0,10]}

Projekce lze zadat pomocí Query.Select() , takže takto můžete použít $slice v projekci:

var results []bson.M // Use your own type here, but this works too

err := DB.C("con").Find(bson.M{"id": ID}).Select(bson.M{
    "contr": bson.M{"$slice": []int{offset, limit}},
}).All(&results)

// handle error

Všimněte si také, zda je vlastnost, podle které filtrujete, "id" nebo je to jen překlep a mělo by to být "_id" . Pokud je to druhé, můžete také použít Collection.FindId() pro dotaz podle ID dokumentu:

err := DB.C("con").FindId(ID).Select(bson.M{
    "contr": bson.M{"$slice": []int{offset, limit}},
}).All(&results)



  1. Při vkládání do sbírky meteorů došlo k chybě

  2. MongoConnectionException – Nepodařilo se připojit k:localhost:27017

  3. Jak si vybrat nejlepší MongoDB hosting pro vaše podnikání

  4. Použití Cloudera Data Engineering k analýze dat programu ochrany výplaty