db.categories.remove(
{"categoryId" : 510001,"name" : "Nevresim Takımları"},{
productTypes:{$elemMatch:{name:"Seri Sonu Ürünler"}}})
我用它来
"_id" : ObjectId("57e6fb9ca71845002b9be169"),
"_class" : "net.infoowl.hepsiburada.microservice.product.domain.Category",
"name" : "Nevresim Takımları",
"categoryId" : 510001,
"parentCategoryId" : 9010109,
"productTypes" : [
{
"_id" : ObjectId("57e6fa87e0c6de002c209124"),
"name" : "Seri Sonu Ürünler",
"requiredHeaders" : [ ],
"uniqueConstraints" : [ ],
"fields" : [ ],
"createdAt" : ISODate("2016-09-24T22:13:27.882Z"),
"createdBy" : "user-0",
"modifiedAt" : ISODate("2016-09-24T22:13:27.882Z"),
"modifiedBy" : "user-0",
"extend" : DBRef("productTypes", "base")
删除"seri sonu ürünler"
但全部删除了
"categoryId" : 510001,"name" : "Nevresim Takımları"
为什么?
当我找到它时,它在数组中找到了正确的变量但是当删除时,为什么不同?
db.categories.find({"categoryId" : 510001,"name" : "Nevresim Takımları"},{productTypes:{$elemMatch:{name:"Seri Sonu Ürünler"}}}).pretty()
{
"_id" : ObjectId("57e6fb9ca71845002b9be169"),
"productTypes" : [
{
"_id" : ObjectId("57e6fa87e0c6de002c209124"),
"name" : "Seri Sonu Ürünler",
"requiredHeaders" : [ ],
"uniqueConstraints" : [ ],
"fields" : [ ],
"createdAt" : ISODate("2016-09-24T22:13:27.882Z"),
"createdBy" : "user-0",
"modifiedAt" : ISODate("2016-09-24T22:13:27.882Z"),
"modifiedBy" : "user-0",
"extend" : DBRef("productTypes", "base")
}
]
}
这是删除
db.categories.remove(
{"categoryId" : 510001,"name" : "Nevresim Takımları"},{
productTypes:{$elemMatch:{name:"Seri Sonu Ürünler"}}})
这是为了寻找
d b.categories.find({"categoryId" : 510001,"name" : "Nevresim Takımları"},{productTypes:{$elemMatch:{name:"Seri Sonu Ürünler"}}}).pretty()
答案 0 :(得分:2)
Java regex Utility用于使用给定查询从集合中删除完整文档。您的查询返回此文档,因此全部删除。
如果要从文档中的数组中删除元素,则需要将remove
与update
在你的情况下,你会想这样做:
@Inject
SomeManagedBean bean;