標籤:
MongoDB內建了一個JavaScript Shell,所以在其中使用js文法是可以的。
Insert操作:
單條插入
var single={"name":"mei","age":22}db.user.insert(single);
迴圈插入
var single={"name":"tinyphp","num":28,}for(var i=0;i<5;i++){single.num=i;db.user.insert(single);}
Find查詢操作:
常用的:
>, >=, <, <=, !=, =
> 對應 $gt
>= 對應 $gte
< 對應 $lt
<= 對應 $lte
!= 對應 $ne
== 如db.user.find({"age":22}) 直接寫值
/*find age >22*/db.user.find({"age":22})
&&
/*find name="tinyphp" && num=3*/db.user.find({"name":"tinyphp","num":3})
or
/*find name="tinyphp" || num=3*/db.user.find({$or:[{"name":"tinyphp"},{"num":3}]})
in
/*find name in ["tinyphp","jack"]*/db.user.find({"name":{$in:["tinyphp","jack"]}})
not in
/*find name not in ["tinyphp","jack"]*/db.user.find({"name":{$nin:["tinyphp","jack"]}})
正則匹配
/* find name 開頭為j的*/db.user.find({"name":/^j/})
$where查詢
db.user.find({$where:function(){return this.name==‘jack‘}})
Update操作:
整體更新
var model=db.user.findOne({"name":"jack"})model.age=44db.user.update({"name":"jack"},model)
局部更新
$inc修改器
/*update bing age+30 */db.user.update({"name":"bing"},{$inc:{"age":30}})
$set修改器
/*update bing age=10 */ db.user.update({"name":"bing"},{$set:{"age":10}})
update的true參數
若update最後參數加true則修改條件不存在時,自動增加一條如:
db.user.update({"name":"Mark"},{$set:{"age":10}},true)
會自動增加一條記錄:name為mark,age為10
如果加了true,而且條件又滿足則會批量修改,不然就預設只更新第一條
Remove操作:
db.person.remove({"name":"jack"})
MongoDB增刪查改