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

Brug af flere facetter i MongoDB Spring Data

Du kan kæde operationer med flere facetter ved hjælp af .and() og .as() metoder. Du bør erstatte den anden facet metode med and metode som nedenfor.

FacetOperation facets = facet(match(where("entryType").is(EntryType.DEBIT)
        .andOperator(where("currentStatus").is(TransactionStatus.CONFIRMED))),
        unwind("history"),
        match(where("history.status").is(TransactionStatus.CONFIRMED)),
        project().andExpression("history.amount").as("historyAmount"),
        group().sum("historyAmount").as("total"),
        project("total")
).as("totalConfirmedDebits"),
        /*
                 * Summarize Confirmed Credits 
         */
.and(match(where("entryType").is(EntryType.CREDIT)
        .andOperator(where("currentStatus").is(TransactionStatus.CONFIRMED))),
        unwind("history"),
        match(where("history.status").is(TransactionStatus.CONFIRMED)),
        project().andExpression("history.amount").as("historyAmount"),
        group().sum("historyAmount").as("total"),
        project("total")
).as("totalConfirmedCredits")



  1. flette flere dokumenter til ét dokument med begge dokumentfelter i MongoDB

  2. Mongodb:beregnet connectToField inde i graphlookup

  3. Sådan opsætter du en Docker redis container med ssl

  4. Hvordan ændrer man typen af ​​et felt?