Sí, pero no de una manera escalable (ya que debe consultar cada colección). Si tiene 2 o 3 colecciones, esto podría estar bien, pero ... probablemente deba revisar su diseño para descubrir por qué lo hace. ¿Por qué estás, por cierto?
- Obtiene una lista de todas las colecciones en la base de datos.
- Usted bucle a través de ellos, y la consulta basada en _id
Muestra código shell:
db.test1.save({});
db.test2.save({});
db.test3.save({});
db.test4.save({});
db.test5.save({});
db.test6.save({});
db.test2.findOne(); // gives: { "_id" : ObjectId("4f62635623809b75e6b8853c") }
db.getCollectionNames().forEach(function(collName) {
var doc = db.getCollection(collName).findOne({"_id" : ObjectId("4f62635623809b75e6b8853c")});
if(doc != null) print(doc._id + " was found in " + collName);
});
da: 4f62635623809b75e6b8853c was found in test2
pero no estoy interesado en la colección - Soy interesado en el objeto mismo! En otras palabras, no me importa no saber a qué colección pertenece el objeto buscado. ¿Esto significa que no hay una sola lista de todos los objetos en la base de datos? – sssilver
Eso es correcto. No hay tal lista. –
que mata a una gran cantidad de genialidad único global :( – sssilver