У меня есть вопрос, так как у меня есть коллекция, в которой хранятся данные. В каждой записи есть дата, в которую была добавлена коллекция. Мой вопрос: мне нужно получить, сколько предметов было добавлено за день. Я нашел запрос на веб-странице MongoDB:MongoDB java query
db.orders.find ({ord_dt: {$ gt: new Date ('01/01/2012) ')}}) .count()
Я пишу все на Java и понятия не имею, как это сделать. Пожалуйста, будьте снисходительны, я начал играть с MongoDB неделю назад. Любая помощь очень ценится.
EDIT: Я нашел Монго агрегирующего нить на переполнение стека, в котором пользователь хочет подсчитать количество записей на минуту, как я хочу, чтобы сосчитать их, например, каждый день я предполагаю, что это должно выглядеть следующим образом:
db.so.insert({ date: new ISODate("2013-08-05T15:24:15") });
db.so.insert({ date: new ISODate("2013-08-05T15:24:19") });
db.so.insert({ date: new ISODate("2013-08-05T15:24:25") });
db.so.insert({ date: new ISODate("2013-08-05T15:24:32") });
db.so.insert({ date: new ISODate("2013-08-05T15:24:45") });
db.so.insert({ date: new ISODate("2013-08-05T15:25:15") });
db.so.insert({ date: new ISODate("2013-08-05T15:25:15") });
db.so.aggregate([
{ $group: {
_id: {
y: { '$year': '$date' },
m: { '$month': '$date' },
d: { '$dayOfMonth': '$date' },
},
count: { $sum : 1 }
} }
]);
Однако не знаю, с чего начать с реализации Java. Любые советы, пожалуйста? :(
Как следует вывод выглядеть? – hgoebl
выход должен быть только Int, поэтому я хочу для получения количества предметов, добавленных в определенный день (для целей статистики) – silvestrairwave
http://stackoverflow.com/questions/15657501/how-to-aggregate-by-date-when-a-full-timestamp-is- дана-в-агрегации-рамки. Что касается Java, вы должны прочитать несколько руководств, это легко, и вы справитесь с этим. – hgoebl