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

Porovnejte 2 pole dokumentu v MongoDB

Najdete zde spoustu příkladů použití operátor $where ale agregační rámec to může udělat za vás ...

db.collection.aggregate([
    {
        "$addFields": {
            "isPayableAmountGreater": { "$cmp": [ "$payable_amount", "$paid_amount" ] }
        }
    },
    { "$match": { "isPayableAmountGreater": 1 } }
])

Nebo ještě jednodušší a bez vytváření (pravděpodobně nechtěného) isPayableAmountGreater kvazi atribut:

db.collection.aggregate([
    {
        "$redact": {
            "$cond": [
                { "$gt": [ "$payable_amount", "$paid_amount" ] },
                "$$KEEP",
                "$$PRUNE"
            ]
        }
    }
])



  1. Jak odstranit starou verzi mongodb a nainstalovat novou v cloud9 IDE?

  2. Cassandra vs. MongoDB

  3. Co je nového v MongoDB 4.2

  4. mongodb přidat čítač ke každému načtenému dokumentu