Ordenar y paginar
Ordena los resultados y pásalos por páginas sin recorrer de más.
Ordena los resultados con sort y pásalos por páginas. Sin sort, TeselaDB devuelve los documentos en el orden de su clave, que no tiene por qué ser el de inserción.
Requisitos
- Una conexión con un usuario que tenga
readsobre la base. - Un índice sobre el campo por el que ordenas.
Ordenar
JavaScript
db.pedidos.find({ estado: "pagado" }).sort({ creado: -1 }).limit(20);Paginar por un valor
Pide la página siguiente a partir del último valor que viste, sin saltar documentos con skip:
JavaScript
db.pedidos
.find({ estado: "pagado", creado: { $lt: ultimoCreado } })
.sort({ creado: -1 })
.limit(20);Comprobar
Cada página trae 20 documentos y la siguiente empieza donde acabó la anterior.
Problemas frecuentes
skipcon un número grande recorre todos los documentos saltados en cada página.- Sin un índice que cubra el orden, la ordenación puede volcar a disco o fallar con
QueryExceededMemoryLimitNoDiskUseAllowed(292).