如何在 mongodb 中插入和更新值?

How to insert and update value in mongodb?

    {_id :1,    
    name : ABC,
address :India,
    ph : { 9856235412, 23654122 }
}

1.如何将Ph的值加1?

意味着我必须添加值02152123,结果应该有

{_id :1,    
    name : ABC,
address :India,
    ph : { 9856235412, 23654122, 02152123 }
}

2。如何更新Ph值9856235412?

,结果应该有

{_id :1,    
    name : ABC,
address :India,
    ph : { 888212225, 23654122, 02152123 }
}

请帮助我 java 中的条件,我是 mongo db

的初学者

我假设 ph 实际上是一个数组而不是对象结构,所以数据结构是:

{_id :1, name : ABC, address :India, ph : [ 9856235412, 23654122 ] }

应该这样做:

db.collection.update({$push:{ph : 02152123}}, {_id:1})

ph : { 9856235412, 23654122 } 不是有效的语法,如果它是一个对象,它应该是:

ph: { someKey: 9856235412, anotherKey: 23654122 }

如果它是一个数组,它应该是:

ph : [ 9856235412, 23654122 ]

假设它是这样的数组:

{
  _id :1,    
  name : ABC,
  address :India,
  ph : [ 9856235412, 23654122 ]
}

1.如何将Ph值加1?

答案:

要添加一个元素:

db.collection.update(
   { _id: 1 },
   { $addToSet: { Ph: 02152123 } }
)

添加多个元素:

db.collection.update(
   { _id: 1 },
   { $addToSet: { Ph: { $each: [ 123, 456, 789 ] } } }
 )

2。如何将Ph的值9856235412更新为888212225?

答案:

db.collection.update(
  { _id: 1, Ph: 9856235412 },
  { $set: { "Ph.$": 888212225 } }
)