我有這樣的文檔。如何保持基於特定字段陣列的唯一性未使用唯一索引
[{
"_id" : ObjectId("aaa"),
"host": "host1",
"artData": [
{
"aid": "56004721",
"accessMin": NumberLong(1481862180
},
{
"aid": "56010082",
"accessMin": NumberLong(1481861880)
},
{
"aid": "55998802",
"accessMin": NumberLong(1481861880)
}
]
},
{
"_id" : ObjectId("bbb"),
"host": "host2",
"artData": [
{
"aid": "55922560",
"accessMin": NumberLong(1481862000)
},
{
"aid": "55922558",
"accessMin": NumberLong(1481861880)
},
{
"aid": "55940094",
"accessMin": NumberLong(1481861760)
}
]
}]
而更新任何文件,重複的「援助」不應該在陣列中再次添加。 我得到的一個選擇是使用artData.aid字段上的唯一索引。但建設指數不是首選,因爲我不需要按照要求。 有什麼辦法可以解決這個問題嗎?
有你看看這個 ** [$ addToSet](https://docs.mongodb.com/v3.2/reference/operator/update/addToSet/)** – Yogesh
@Yogesh不適用於添加子文檔 – Belfordz