Dal momento che il ObjectId
per impostazione predefinita contiene un inc
e un timestamp
( http://www.mongodb.org/display/DOCS/ Object+IDs#ObjectIDs-BSONObjectIDSpecification
) puoi effettivamente utilizzare ObjectId
per capire il tempo di inserimento (approssimativamente) tramite:
db.col.find({_id: {$gt: {ObjectId("50911c4709913b2c643f1216")}}});
Tuttavia il ObjectId
non può essere sempre estremamente affidabile soprattutto se, nella tua app, crei l'ObjectId
un po' prima dell'inserimento e in realtà viene mostrato un record che sai che è stato creato in seguito (a causa del suo _id
) come prima.
Per inserimenti in determinati scenari in cui non puoi fidarti di ObjectId
per il timer di inserimento puoi aggiungere un ts
campo di un tipo di data BSON (ISODate
) e selezionalo usando due query, una per ottenere l'ora dei documenti originali e un'altra per ottenere tutti i documenti dopo.
Personalmente preferisco semplicemente utilizzare il secondo metodo di utilizzo di un tipo di data BSON poiché è più affidabile e flessibile.