2015-04-23 101 views
0

我從搜索框中獲取數據,然後使用常規插入查詢作爲文檔插入到MongoDB中。數據以下列格式存儲在單詞「癌症」的集合中,並帶有唯一的「_id」。MongoDB查詢刪除集合中的重複文檔

{ 
    "_id": { 
    "$oid": "553862fa49aa20a608ee2b7b" 
    }, 
    "0": "c", 
    "1": "a", 
    "2": "n", 
    "3": "c", 
    "4": "e", 
    "5": "r" 
} 

每個文檔都有一個單詞存儲在上述相同的格式。我有很多這樣的文件。現在,我想從集合中刪除重複的文檔。我無法想出辦法做到這一點。幫我。

+0

請問http://stackoverflow.com/questions/14184099/fastest-way-to-remove-duplicate-documents-in-mongodb有幫助嗎?或http://stackoverflow.com/questions/13190370/how-to-remove-duplicates-based-on-a-key-in-mongodb? – Zee

+0

不是蘇拉比。在這裏,我很困惑爲什麼一個詞的字母被分配一個值。 – Vamshi

+1

通常情況下,你會這樣做,通過使單詞爲關鍵字,因爲這是唯一的 – Sammaye

回答

2

在蒙戈外殼簡單的解決辦法:`

use your_db 
db.your_collection.createIndex({'1': 1, '2': 1, '3': 1, etc until you reach maximum expected letter count}, {unique: true, dropDups: true, sparse:true, name: 'dropdups'}) 
db.your_collection.dropIndex('dropdups') 

筆記:

  • 如果你有很多文件,預計此過程將需要很長的 時間
  • 小心這將刪除文件,更好地克隆你的收藏,並在那裏嘗試。