mongodb 如何返回内嵌数组的部分结果
举例: post:{ title:'title"' author:‘a’, comments:[ {by:‘john’,text:‘dddd’} . . . ] }
我们知道一篇文章里有很多评论,正常情况下每页只会显示其中的几条评论, 如何在查询一篇文章的时候只将它的其中几条评论返回而不是返回所有的评论呢?
11 回复
$slice
非常感谢
如果真的有很多评论的话,也不建议放在数组里。因为随着评论数的增加,document的大小也会变化,导致插入性能降低。
有道理, 不过如果不放在一起,就和关系型数据库一样了,如何在关系型数据库和非关系型数据库中抉择了,项目对数据的完整性要求不是很高
@saber 不能因为这个一定要放在数组里是不是,该单独一个collection的时候还是要单独放。
@saber 不能因为关系不关系就放弃了性能啊,新技术的出现不都是为了更好的完成某些事情,或者与某些方式完成
@saber saber兄台,找到这个帖子粉你一下。
强烈建议开发聊天功能啊,,加我微博吧@十块梅菜扣肉
@saber 其实我都不太喜欢上微博的说,不过还是加了
http://cnodejs.org/topic/50a60955637ffa4155faf861
推荐你使用聚合框架,或许能解决你的问题