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

limite mongodb no documento incorporado


Os documentos do MongoDB explicar como selecionar um subintervalo de um elemento de matriz.
db.dialogs.find({"_id": [dialogId]}, {msgs:{$slice: 5}}) // first 5 comments
db.dialogs.find({"_id": [dialogId]}, {msgs:{$slice: -5}}) // last 5 comments
db.dialogs.find({"_id": [dialogId]}, {msgs:{$slice: [20, 10]}}) // skip 20, limit 10
db.dialogs.find({"_id": [dialogId]}, {msgs:{$slice: [-20, 10]}}) // 20 from end, limit 10

Você pode usar essa técnica para selecionar apenas as mensagens relevantes para sua interface do usuário. No entanto, não tenho certeza de que este seja um bom design de esquema. Você pode considerar separar as mensagens "visíveis" das mensagens "arquivadas". Pode tornar a consulta um pouco mais fácil/rápida.