MongoDB sorting date string (mm/dd/yyyy)

后端 未结 2 475
没有蜡笔的小新
没有蜡笔的小新 2021-01-18 08:52

I\'m storing date as string in \"mm/dd/yyyy\" format. I want to sort by this date field. I tried below query with few test data.

db.collection.find().sort({d         


        
相关标签:
2条回答
  • 2021-01-18 09:13

    With yyyy being last, that sort isn't going to work across years.

    Probably best to switch to a yyyy-mm-dd formatted string or an actual Date type. Both of those will sort correctly.

    0 讨论(0)
  • 2021-01-18 09:17

    Within MongoDB 3.6 you can now use $dateFromString (https://docs.mongodb.com/manual/reference/operator/aggregation/dateFromString/)

    db.logmessages.aggregate( [ {
       $project: {
          date: {
             $dateFromString: {
                dateString: '$date'
             }
          }
       }
    }, { $sort: { date : 1} } ] )
    
    0 讨论(0)
提交回复
热议问题