Я нашел много ответов в stackoverflow
, но ничего не помогло. У меня есть collection
, который выглядит следующим образом:
#DB Name: test
#Collection Name: firstcollection
{
"_id" : ObjectId("5d8b51e80eeb1c27ce119e52"),
"url" : "http://192.168.1.37/second.html",
"browser" : "Netscape",
"uniqueId" : "dd0c76b1-77c7-445a-8bcd-e58cb239507e",
"ip" : " 162.158.166.103",
"date" : "25/09/2019 16:37:56"
}
// ----------------------------------------------
{
"_id" : ObjectId("5d8b51e80eeb1c27ce119e62"),
"url" : "http://192.168.1.37/second.html",
"browser" : "Netscape",
"uniqueId" : "c3a3c5f8-23a8-4626-9b43-b5a95fb02597",
"ip" : " 172.69.134.115",
"date" : "25/09/2019 16:38:13"
}
Здесь я хочу конвертировать date
в формате String
в Date
. Я пробовал этот код
> db.firstcollection.aggregate([
... {$project:{ date:{$dateFromString:{dateString:'$date'}}}}
... ])
Но он показывает ошибку
assert: command failed: {
"ok" : 0,
"errmsg" : "Error parsing date string '25/09/2019 16:37:56'; 0: Unexpected character '2'",
"code" : 40553,
"codeName" : "Location40553"
} : aggregate failed
_getErrorWithCode@src/mongo/shell/utils.js:25:13
doassert@src/mongo/shell/assert.js:16:14
assert.commandWorked@src/mongo/shell/assert.js:403:5
DB.prototype._runAggregate@src/mongo/shell/db.js:260:9
DBCollection.prototype.aggregate@src/mongo/shell/collection.js:1212:12
@(shell):1:1
Я пробовал это также, но он не показывает аргумент формата
db.firstcollection.aggregate([
{ "$addFields": {
"date": {
"$dateFromString": {
"dateString": "$date",
"format": "%d-%m-%Y %H%M%S"
}
}
} }
])
Я обнаружил, что MongoDB 3.6
удалил format
аргумент в dateFromString
из этого ответа Так что я не могу указать формат.
Я также запутался с руководством MongoDB 3.6
В первой ссылке на руководство 3.6 указано, что есть аргумент формата Первая ссылка на руководство В другой ссылке на руководство 3.6,в нем нет аргумента формата Second Manual Link
Так что я не знаю, как решить эту проблему. Предложите мне несколько решений для преобразования string
в date
в MongoDB
. Я хочу получить данные из MongoDB с помощью указанного from and to date
. Поскольку это строка, я не могу получить правильные данные. Помогите мне с некоторыми решениями