mongodb update操作

来源:互联网 发布:fi是什么软件 编辑:程序博客网 时间:2024/05/16 04:48
mongodb的更新操作

正常更新操作
设结构记录结构为 array(’a'=>1,’b'=>’t'),想让a等于5,那么:
$collection->update(array("b"=>"t"),array('$set'=>array("a"=>2)));



$inc
设结构记录结构为 array(’a'=>1,’b'=>’t'),想让a加5,那么:

$collection -> update(array("b"=>1),array("$inc"=>array("a"=>5)))


$unset
删除记录中的某个字段
结构记录结构为 array('a'=>1,'b'=>‘f'),删除字段a,那么:
$collection->update(array("b"=>"f"),array('$unset'=>array("a"=>1)));

$push
如果对应节点是个数组,就附加一个新的值上去;不存在,就创建这个数组,并附加一个值在这个数组上;如果该节点不是数组,返回错误。
$collection->update(array("b"=>"f"),array('$push'=>array("a"=>11111)));


$addToSet
如果该阶段的数组中没有某值,就添加之
设记录结构为array('a'=>array(0=>'haha'),'b'=>1),如果想附加新的数据到该节点a,那么:
$coll->update(
array('b'=>1),
array('$addToSet'=>array('a'=>'wow')),
)

$pop
设该记录为array('a'=>array(0=>'haha',1=>'wow'),'b'=>1)
删除某数组节点的最后一个元素:
$coll->update(
array('b'=>1),
array('$pop=>array('a'=>1)),
)

删除某数组阶段的第一个元素
$coll->update(
array('b'=>1),
array('$pop=>array('a'=>-1)),
)

$pull
如果该节点是个数组,那么删除其值为value的子项,如果不是数组,会返回一个错误。
设该记录为array('a'=>array(0=>'haha',1=>'wow'),'b'=>1),想要删除a中value为haha的子项:
$coll->update(
array('b'=>1),
array('$pull=>array('a'=>'haha')),
)
结果为: array('a'=>array(0=>'wow'),'b'=>1)



小知识:在admin库里面添加用户是全局的,也就是说在admin中添加用户,在其他库里面也是适用的。

显示所有数据库信息
d:\mongodb\bin>mongo
show dbs;

0 0