MongoDB查询语言全解析
1. 电商查询基础
在电商场景中,为作为引用的字段创建索引非常重要。例如,在 reviews 集合中, user_id 和 product_id 字段就需要创建索引。
1.1 产品列表页面查询
产品列表页面会展示特定类别的产品列表,同时会显示父类别和兄弟类别的链接。该页面由类别定义,请求页面时会使用类别的 slug 。以下是相关查询示例:
page_number = 1
category = db.categories.findOne({'slug': 'gardening-tools'})
siblings = db.categories.find({'parent_id': category['_id']})
products = db.products.find({'category_id': category['_id']})
.skip((page_number - 1) * 12)
.limit(12)
.sort({'helpful_votes': -1})
兄弟类别是具有相同父类别的其他类别,查询兄弟类别很直接。由于产品包含类别 ID 数组,查询特定类别下的所有产品也很简单。你可以提供其他排序方法,如按名称、价格等排序,只需更改排序字段即可。
需要考虑排序的效率问题。虽然可以依靠索引进行排序,但随着排序选项的增加,索引数量会增多,维护索引的成本可能会变得不合理,因为每
超级会员免费看
订阅专栏 解锁全文
1306

被折叠的 条评论
为什么被折叠?



