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

získat odlišné hodnoty pomocí tříděných dat

Agregační rámec můžete použít k seskupení podle prvku, který chcete odlišit (skupina jej odliší). Pokud tedy chcete třídit podle partitury a získat odlišné klávesy, můžete udělat následující - seřadit podle partitury, seskupit podle klávesy a přidat partituru jako pole prvků (již seřazených):

db.test.aggregate([
    { $sort : { score : -1 } },
    { $group : {_id : "$key", scores : { $push : "$score" } } }
])

Výsledkem budou odlišné klíče spolu s řadou skóre, což jsou skóre obsažená v dokumentech s duplicitními klíči. Nejsem si jistý, že je to přesně to, co hledáte, a vím, že je to stará otázka, ale myslel jsem si, že by to mohlo pomoci někomu jinému, aby se na ni v budoucnu podíval – jako alternativní způsob, jak to udělat.



  1. Rozsah založené stránkování mongodb

  2. Zkopírujte složku se zástupným znakem z kontejneru dockeru na hostitele

  3. Odeberte vložený dokument z vnořeného pole dokumentů

  4. 5 způsobů, jak získat měsíc z data v MongoDB