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

Elem match zwraca wszystkie dane, podczas gdy ja potrzebuję tylko wybranych danych

$elemmatch(zapytanie) zwraca wszystkie wiersze w tablicy, gdy przynajmniej jeden wiersz pasuje do kryteriów zapytania.

$elemMatch(projekcja) zwraca tylko pierwszy wiersz ze wszystkich pasujących wierszy, gdy jest używany jako projekcja.

Możesz łatwo uzyskać wszystkie pasujące wiersze, używając operatora agregacji tablic $filtr .

W tym scenariuszu szczegóły produktu będą filtrowane na podstawie przekazanych kryteriów.

aggregate([{
    $match: {
        "project_code": 'usha-fos'
    }
}, {
    $project: {
        "agency_code": 1,
        "client_code": 1,
        "project_code": 1,
        "product_details": {
            "$filter": {
                "input": "$product_details",
                "as": "result",
                cond: {
                    $eq: ["$$result.Division", "Electric Fans"]
                }
            }
        }
    }
}])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wstawianie nowych pól (kolumn) do mongoDB za pomocą pand

  2. Mongo DB - eksport w trybie rozszerzonym JSON

  3. błąd TS2688:Nie można znaleźć pliku definicji typu dla „bson”

  4. MongoDB znajdź w kolekcji z nieznanym kluczem

  5. Spring Data MongoDB - ignoruj ​​puste obiekty