MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBで文字列を日付に変換しますか?


文字列をMongoDBで日付に変換するには、次の構文を使用します。

db.yourCollectionName.aggregate(
   [
      {
         $project:
         {
            anyVariableName:
            {
               $dateFromString:
               {
                  dateString: '$yourFieldName’
               }
            }
         }
      }
   ]
);

上記の構文を理解するために、いくつかのドキュメントを使用してコレクションを作成しましょう。ドキュメントを含むコレクションを作成するためのクエリは次のとおりです。

> db.ConvertStringToDateDemo.insertOne({"ArrivalDate":"20-10-2019"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6ef3596fd07954a489069f")
}
> db.ConvertStringToDateDemo.insertOne({"ArrivalDate":"21-02-2019"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6ef3616fd07954a48906a0")
}
> db.ConvertStringToDateDemo.insertOne({"ArrivalDate":"10-12-2018"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6ef36d6fd07954a48906a1")
}
> db.ConvertStringToDateDemo.insertOne({"ArrivalDate":"31-01-2017"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6ef37b6fd07954a48906a2")
}

find()メソッドを使用して、コレクションのすべてのドキュメントを表示します。クエリは次のとおりです。

> db.ConvertStringToDateDemo.find().pretty();

出力は次のとおりです。

{
   "_id" : ObjectId("5c6ef3596fd07954a489069f"),
   "ArrivalDate" : "20-10-2019"
}
{
   "_id" : ObjectId("5c6ef3616fd07954a48906a0"),
   "ArrivalDate" : "21-02-2019"
}
{
   "_id" : ObjectId("5c6ef36d6fd07954a48906a1"),
   "ArrivalDate" : "10-12-2018"
}
{
   "_id" : ObjectId("5c6ef37b6fd07954a48906a2"),
   "ArrivalDate" : "31-01-2017"
}

文字列を日付に変換するクエリは次のとおりです。

> db.ConvertStringToDateDemo.aggregate( [ {
...    $project: {
...       StringToDate: {
...          $dateFromString: {
...             dateString: '$ArrivalDate'
...          }
...       }
...    }
... } ] ).pretty();

出力は次のとおりです。

{
   "_id" : ObjectId("5c6ef3596fd07954a489069f"),
   "StringToDate" : ISODate("2019-10-20T00:00:00Z")
}
{
   "_id" : ObjectId("5c6ef3616fd07954a48906a0"),
   "StringToDate" : ISODate("2019-02-21T00:00:00Z")
}
{
   "_id" : ObjectId("5c6ef36d6fd07954a48906a1"),
   "StringToDate" : ISODate("2018-12-10T00:00:00Z")
}
{
   "_id" : ObjectId("5c6ef37b6fd07954a48906a2"),
   "StringToDate" : ISODate("2017-01-31T00:00:00Z")
}

  1. MongoDBで日付形式を変更する

    次の日付があります- 01-10-2019 日付の形式を変更するには、カスタム変数を使用して日付を文字列に変換し、その形式を変更します- 以下は、日付を文字列に実装するためのクエリです- > var inputDate="01-10-2019"; > var formatDate= inputDate.split(/-|\//); > var outputString= formatDate[2]+'-'+formatDate[0]+'-'+formatDate[1]; 変数値の表示- > print(outpu

  2. MySQLの日付を文字列フィールドから変換しますか?

    MySQLで文字列を日付に変換するには、STR_TO_DATE()関数を使用できます。構文は次のとおりです- select str_to_date(‘StringValue’, '%d,%m,%Y') as anyVariableName; 上記の構文を次のクエリに適用します。ここで、文字列値- mysql> SELECT STR_TO_DATE('26,11,2018','%d,%m,%Y'); 以下は出力です- +--------------------------------------+ | STR_TO