无论如何在MongoDB(PHP)中订购一个独特的查询?如果我可以对它应用skip()和limit(),那就更好了。但我还没有找到任何办法。
在SQL中,我会按照以下方式执行以下操作:
SELECT distinct(fieldname)
FROM tablename
ORDER BY fieldname
LIMIT 10
OFFSET 100
答案 0 :(得分:4)
您可以使用MongoDB 2.2中的新Aggregation Framework实现此类查询:
db.collname.aggregate(
{ $group : { _id : "$fieldname" }},
{ $sort : { _id: 1 }},
{ $skip : 100 },
{ $limit : 10 }
);
有一些limitations需要注意,特别是: