Bạn có thể đủ điều kiện cập nhật update
của mình với một đối tượng truy vấn ngăn cập nhật nếu name
đã có trong profile_set
. Trong shell:
db.coll.update(
{_id: id, 'profile_set.name': {$ne: 'nick'}},
{$push: {profile_set: {'name': 'nick', 'options': 2}}})
Vì vậy, điều này sẽ chỉ thực hiện $push
cho một tài liệu có _id
phù hợp và nơi không có profile_set
phần tử trong đó name
là 'nick'
.