MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Agregacja Mongo, rzutuj podpole pierwszego elementu tablicy

Jeśli używasz co najmniej MongoDB v3.2, możesz użyć $arrayElemAt operatora za to. Poniższe zapytanie robi to, co chcesz. Nie zwróci jednak żadnych danych dla podanej próbki, ponieważ "Instructions.1": { $exists: true } filtr usuwa przykładowy dokument.

db.getCollection('Orders').aggregate([{
    $match: {
        "Instructions.1": {
            $exists: true
        }
    }
}, {
    $project: { 
        "_id": 0, 
        "UserId": "$User.EntityId", 
        "ItemName": { $arrayElemAt: [ "$Items.Details.ItemName", 0 /* first item! */] }
    }
}])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wprowadź wartość formularza (format json) do bazy danych za pomocą meteor

  2. Jak dostosować MongoRepository bez nadpisywania adnotowanych metod @Query w interfejsie?

  3. Mongodb unika zduplikowanych wpisów

  4. Czy połączenie z MongoDB jest automatycznie zamykane w procesie process.exit()?

  5. Utwórz drzewo węzłów z tabelą rekurencyjną za pomocą Express i Mongo