0
Вот мои данные:Как рассчитать временную разницу в mongodb (в часах)?
[
{
id: 1,
starttime: ISODate("2015-08-24T00:00:00.000Z"),
endtime: ISODate("2015-08-24T07:00:00.000Z")
},
{
id: 2,
starttime: ISODate("2015-08-24T20:00:00.000Z"),
endtime: ISODate("2015-08-25T01:00:00.000Z")
}
]
я могу сделать MongoDB запрос для отображения длительности (или в данном случае операция разности) STARTTIME и EndTime с результатами, как:
[ {id:1, duration: 7}, {id: 2, duration: 5}]
Обратите внимание, что метка времени может имеют разную дату, поэтому $hour
(агрегационный конвейер) может не работать. Может ли кто-нибудь помочь? Спасибо
Вы можете использовать проектор с $ вычесть: {$ Проект: {_id: '$ ID', продолжительность: {$ вычитать: [ '$ время окончания', '$ STARTTIME']}}}, – Yoleth
Пробовал, что результат: [{id: 1, duration: null}, {id: 2, duration: null}] – DennyHiu
Извините, у меня есть неправильное имя переменной, $ subtract works, вот результат: [{id: 1, продолжительность: 25200000}, {id: 2, продолжительность: 18000000}]. это в секундах? – DennyHiu