{
"_id" : ObjectId("5b8fb8bd1fc32d075c337d7c"),
"current" : {
"title" : "My title",
"description" : "This is my description",
},
"history" : {
"1517493599" : {
"from" : NumberInt(1483264800),
"from_date" : "2017-01-01 10:00:00",
"to" : NumberInt(1517493599),
"to_date" : "2018-02-01 13:59:59",
"data" : {
"title" : "This is older title",
"description" : "Some older description",
}
},
"1483264800" : {
"from" : NumberInt(1465171200),
"from_date" : "2016-06-06 00:00:00",
"to" : NumberInt(1483264800),
"to_date" : "2017-01-01 10:00:00",
"data" : {
"title" : "Oldest title",
"description" : "Oldest description",
}
}
},
"updated_at" : ISODate("2018-09-05T11:06:37.000+0000"),
"created_at" : ISODate("2018-09-05T11:06:37.000+0000")
}
Под «историей» все элементы хранятся в массиве, которые перечислены в виде значений меток времени Unix (используемых в качестве ключевых элементов массива)
Легко найти данные в массиве истории, если я знаю точное время Unix:
$data = DbData::where('history.1517493599.data.title', '=', 'This is older title')->get();
Как мне найти элементы в массиве истории, учитывая, что я не знаю точное время Unix?