5
首先,我是mongo的新手,所以我不知道多少,我不能刪除重複的行,因爲有一些依賴關係。Mongo與全行對象的區別查詢
我存儲在蒙戈
{'id': 1, 'key': 'qscderftgbvqscderftgbvqscderftgbvqscderftgbvqscderftgbv', 'name': 'some name', 'country': 'US'},
{'id': 2, 'key': 'qscderftgbvqscderftgbvqscderftgbvqscderftgbvqscderftgbv', 'name': 'some name', 'country': 'US'},
{'id': 3, 'key': 'pehnvosjijipehnvosjijipehnvosjijipehnvosjijipehnvosjiji', 'name': 'some name', 'country': 'IN'},
{'id': 4, 'key': 'pfvvjwovnewpfvvjwovnewpfvvjwovnewpfvvjwovnewpfvvjwovnew', 'name': 'some name', 'country': 'IN'},
{'id': 5, 'key': 'pfvvjwovnewpfvvjwovnewpfvvjwovnewpfvvjwovnewpfvvjwovnew', 'name': 'some name', 'country': 'IN'}
以下數據可以看到一些行是重複使用不同的ID 只要它會解決這個問題,從輸入我必須處理它的輸出。
我需要在以下方式中的數據:
{'id': 1, 'key': 'qscderftgbvqscderftgbvqscderftgbvqscderftgbvqscderftgbv', 'name': 'some name', 'country': 'US'},
{'id': 3, 'key': 'pehnvosjijipehnvosjijipehnvosjijipehnvosjijipehnvosjiji', 'name': 'some name', 'country': 'IN'},
{'id': 4, 'key': 'pfvvjwovnewpfvvjwovnewpfvvjwovnewpfvvjwovnewpfvvjwovnew', 'name': 'some name', 'country': 'IN'}
我查詢
keys = db.collection.distinct('key', {})
all_data = db.collection.find({'key': {$in: keys}})
正如你可以看到它有兩個查詢了相同的結果集請把它結合起來,一個作爲數據庫非常大
我也可能在key
上創建一個,但是這個值很長(152個字符),它不會幫助我。
或者它會?
的可能的複製(http://stackoverflow.com/questions/ [從MongoDB中刪除重複] 31557053/remove-duplicates-from-mongodb) –
在「刪除」部分中可能不是「完全」,但肯定是在識別部分。基本上你需要在公共字段上使用'$ group',然後用'$ first'返回任何其他的輔助字段 –