基于mongodb状态的不同集合

时间:2016-05-26 08:05:35

标签: mongodb

我有一个包含状态字段的事务表。 状态可以是已完成,已取消和正在进行中。 如果我将事务表分成三个单独的表,即OngoingTrans,CompletedTrans,CancelledTrans,它会有用吗。

这种行为在关系数据库中很有用,但在mongodb中有用吗?

1 个答案:

答案 0 :(得分:0)

根据mongodb.com上提供的MongoDB最佳实践白皮书 MongoDB Best practices

  

避免在查询中出现否定。与大多数数据库系统一样,   MongoDB没有索引缺少值和   否定条件可能需要扫描所有文件。如果   否定是唯一的条件而且它没有选择性(因为   例如,查询订单表中的99%   订单已完成,以识别尚未完成的订单   已完成),所有记录都需要扫描。

他们建议不要在查询中使用否定,以便将其单独存储