sql >> Databasteknik >  >> NoSQL >> MongoDB

Projektera olika inbäddade strukturer till samma namn

Du kan använda $ifNull operatör till $project fältet "värdnamn".

cmp = db['computers'].aggregate([
    {"$project": { 
        "u_hostname": {
            "$ifNull": [
                "$hostnames.name", 
                { "$map": { 
                    "input": {"$literal": ["A"]}, 
                    "as": "el", 
                    "in": "$hostname"
                }}
            ]
        }, 
        "_id": 0, 
        "u_ipv4": "$addresses.ipv4"
    }},
    {"$unwind": "$u_hostname"}
])


  1. Delmatchningar med mongos primitiva paket

  2. Hur man matchar en sträng som består av specialtecken som bindestreck och mellanslag

  3. hur mongoimporterar man data till utplacerad meteorapp?

  4. Mongoose getter/setters för normalisering av data