mongodb在重複資料的集合裡建立唯一索引

2021-07-10 08:15:30 字數 628 閱讀 2618

mongodb集合要求某乙個欄位的值唯一

通過在字段建立唯一索引來實現,現在集合裡存在重複的資料,建立索引報錯如下:

> db.collectedurl.ensureindex(,)

","code" : 11000

}>

dropdups選項為true時會刪除集合的重複值,但現在報錯了,經過查詢dropdups不支援mongodb3版本了

用以下方法解決在重複資料的集合裡建立唯一索引

1.首先把集合資料匯出

mongoexport -d uxgourmet -c collectedurl -o collectedurl.json 

2.刪除集合資料

db.collectedurl.remove({})

3.在集合上建立唯一索引

db.collectedurl.ensureindex(,)

4.把匯出資料再次匯入集合中

mongoimport -d uxgourmet -c collectedurl --upsert d:/collectedurl.json   

注意要加上--upsert選項

--upsert   insert or update objects that already exist

mongoDb刪除重複資料

注 mongodb當前版本是3.4.3 插入六條資料 查詢存在重複的資料 查詢並迴圈刪除重複資料 刪除語句解析 db.userinfo.aggregate group count dups match foreach function doc 1.根據username和age分組並統計數量,grou...

mongoDb刪除重複資料

注 mongodb當前版本是3.4.3 查詢存在重複的資料 查詢並迴圈刪除重複資料 刪除語句解析 db.userinfo.aggregate group count dups match foreach function doc 1.根據username和age分組並統計數量,group只會返回參與...

MongoDB刪除字段重複資料

1.查詢表中相同字段 查詢表中字段為 bqyid 相同的字段 db.restominprice.aggregate uniqueids count 2.刪除表中相同資料 查詢和刪除語句,刪除語句後面新增foreach迴圈 db.restominprice.aggregate uniqueids co...