Я пытаюсь создать групповой запрос в коллекции MongoDB, похожий на:
db.orders.group( {
key: { ord_dt: 1, 'item.sku': 1 },
cond: { ord_dt: { $gt: new Date( '01/01/2012' ) } },
reduce: function ( curr, result ) { },
initial: { }
} )
Я использую rmongodb. Изучив документацию пакета rmongodb, они используют mongo.command
для запуска команды count:
mongo <- mongo.create()
if (mongo.is.connected(mongo)) {
buf <- mongo.bson.buffer.create()
mongo.bson.buffer.append(buf, "count", "people")
mongo.bson.buffer.append(buf, "query", mongo.bson.empty())
command <- mongo.bson.from.buffer(buf)
result = mongo.command(mongo, "test", command)
if (!is.null(result)) {
iter = mongo.bson.find(result, "n") print(mongo.bson.iterator.value(iter))
}
}
также различаются:
mongo.distinct <- function(mongo, db, collection, key) {
b <- mongo.command(mongo, db, list(distinct=collection, key=key))
if(!is.null(b))
b <- mongo.bson.value(b, "values")
}
names <- mongo.distinct(mongo, "test", "people", "name")
Кому-нибудь удалось использовать mongo.command
для группового запроса?