技术开发 频道

八天学会MongoDB:第二天 细说增删查改

  三:Update操作

  更新操作无非也就两种,整体更新和局部更新,使用场合相信大家也清楚。

  <1> 整体更新

  不知道大家可还记得,我在上一篇使用update的时候,其实那种update是属于整体更新。

八天学会MongoDB:第二天 细说增删查改

  <2> 局部更新

  有时候我们仅仅需要更新一个字段,而不是整体更新,那么我们该如何做呢?easy的问题,MongoDB中已经给我们提供了两个

  修改器: $inc 和 $set。

  ① $inc修改器

  $inc也就是increase的缩写,学过sql server 的同学应该很熟悉,比如我们做一个在线用户状态记录,每次修改会在原有的基础上

  自增$inc指定的值,如果“文档”中没有此key,则会创建key,下面的例子一看就懂。

八天学会MongoDB:第二天 细说增删查改

  ② $set修改器

  啥也不说了,直接上代码

八天学会MongoDB:第二天 细说增删查改

  <3> upsert操作

  这个可是MongoDB创造出来的“词”,大家还记得update方法的第一次参数是“查询条件”吗?,那么这个upsert操作就是说:如果我

  没有查到,我就在数据库里面新增一条,其实这样也有好处,就是避免了我在数据库里面判断是update还是add操作,使用起来很简单

  将update的第三个参数设为true即可。

八天学会MongoDB:第二天 细说增删查改

  <4> 批量更新

  在MongoDB中如果匹配多条,默认的情况下只更新第一条,那么如果我们有需求必须批量更新,那么在MongoDB中实现也是很简单

  的,在update的第四个参数中设为true即可。例子就不举了。

  四: Remove操作

  这个操作在上一篇简单的说过,这里就不赘述了。请继续关注《八天学会MongoDB:第三天 细说高级操作

0
相关文章