我用一個集合記錄了所有發給用戶的驗證碼,現在需要分頁查除各個手機對應的最新驗證碼,但是我想了好久都沒想出一個合理的查詢,我目前採取的查詢很噁心,如下
let items = yield CaptchaModel.aggregate([
{$group: {_id: '$mobile', time: {$last: '$createtime'}}},
{$skip: 0},
{$limit: 10}
]);
let condition = {};
condition.$or = items.map(function(item) {
return {mobile: item._id, createtime: item.time};
});
return yield CaptchaModel.find(condition).exec();
也就是說我可以透過last查處最新的那筆記錄,但是我不知道怎麼同時查處那筆記錄對應的驗證碼,我必須分兩步驟查詢,有人知道方法嗎? ?