MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Ändern Sie den Datentyp von Zeichenfolge zu Datum, während fehlende Daten übersprungen werden

db.collection.updateMany(
    {
        "$and": [
            { "startDate": { "$type": "string" } },
            { "startDate": { "$ne": "" } }
        ]
    },
    [
       {
        "$set": {
            "startDate": {
                "$dateFromString": {
                    "dateString": "$startDate",
                    "format": "%m/%d/%Y"
                }
            }
        }
    }
]
)

Wenn Sie leere Zeichenfolgen herausfiltern, anstatt die Transformation durchzuführen, werden Dokumente ignoriert, die eine leere Zeichenfolge im Datumsfeld enthalten.