MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Encontre dados de 15 minutos com o campo ObjectID


O problema é que sua consulta não é um JSON válido, pois contém expressões JS a serem avaliadas (seus cálculos com a data).
Então você basicamente tem que fazer um script ou fazer algumas acrobacias de shell que geram a consulta JSON antes de passá-la para mongoexport

Você pode encontrar este link útil que faz exatamente isso com python

Além disso, fiz (rápido e sujo) algo semelhante com o node, ou seja, criei um arquivo query.js com este conteúdo que essencialmente cria sua consulta JSON e a grava no console
var oid = Math.floor(new Date(new Date().getTime() - 1000 * 60 * 15) / 1000).toString(16) + "0000000000000000";
console.log('{ "_id": { "$gte": new ObjectId("' + oid + '") } }');

para que agora você possa usá-lo em seu shell assim
mongoexport ... --query "$(node query.js)" ...

espero que ajude