我对mongo有点陌生,我想知道处理以下情况的最佳方法。
我有一个 students 集合,它有一个名为 email 的字段,该集合已经包含一些具有此属性集的记录,并且我们发现有一些记录的电子邮件重复(多个学生具有相同的电子邮件)。因此,从现在开始,我们希望将电子邮件属性转换为唯一索引,所以我想知道它的过程是什么。
我应该首先删除现有的重复项,还是现在就添加唯一索引就足够了,这样就可以确保从现在开始,集合(db)不允许他们使用现有的电子邮件创建记录?
我的意思是,我们对现有的/以前的记录没有问题,但我们希望防止将来的记录发生这种情况。
1条答案
按热度按时间yzckvree1#
要添加唯一索引,可以用途:
唯一索引确保索引字段不存储重复值;即强制索引字段的唯一性。默认情况下,MongoDB在创建集合时会在_id字段上创建一个唯一的索引。
https://www.mongodb.com/docs/manual/core/index-unique/
但是,在此之前必须删除具有重复电子邮件值的文档
查看此答案以获取更多信息https://stackoverflow.com/a/35711737/1278463