Dela via


$dateFromString

Operatorn $dateFromString används för att konvertera en datum-/tidssträng till ett datumobjekt i MongoDB. Den här åtgärden kan vara användbar när du hanterar strängrepresentationer av datum som måste ändras eller frågas som datumobjekt.

Syntax

{ $dateFromString: { dateString: <string>, format: <string>, timezone: <string>, onError: <expression>, onNull: <expression> } }

Parametrar

Parameter Description
dateString Datum/tid-strängen som ska konverteras till ett datumobjekt.
format (Valfritt) Datumformatspecifikationen för dateString.
timezone (Valfritt) Tidszonen som ska användas för att formatera datumet.
onError (Valfritt) Värdet som ska returneras om ett fel inträffar vid parsning av dateString.
onNull (Valfritt) Värdet som ska returneras dateString om är null eller saknas.

Exempel

Konvertera datum för kampanjevenemang

Det här exemplet visar hur du konverterar startDate kampanjhändelser endDate och från strängrepresentationer till datumobjekt.

db.collection.aggregate([
  {
    $project: {
      eventName: 1,
      startDate: {
        $dateFromString: {
          dateString: {
            $concat: [
              { $toString: "$promotionEvents.promotionalDates.startDate.Year" },
              "-",
              { $toString: "$promotionEvents.promotionalDates.startDate.Month" },
              "-",
              { $toString: "$promotionEvents.promotionalDates.startDate.Day" }
            ]
          }
        }
      },
      endDate: {
        $dateFromString: {
          dateString: {
            $concat: [
              { $toString: "$promotionEvents.promotionalDates.endDate.Year" },
              "-",
              { $toString: "$promotionEvents.promotionalDates.endDate.Month" },
              "-",
              { $toString: "$promotionEvents.promotionalDates.endDate.Day" }
            ]
          }
        }
      }
    }
  }
])