您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關使用JavaScript 怎么對MongoDB進行增刪查改操作,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
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查詢操作:
db.集合名.find(query,fields,limit,skip)
query,指明查詢條件,相當于SQL中的where語句
例子:
db.student.find({"name":"joe","age":{$lt:22}})
fields用于字段映射,語法格式:{field:0}或{field:1}
例子:
db.student.find({"age":{$lt:22},{"_id":0,"name":1}})
表示查詢結果包含name字段,不包含_id字段
limit限制查詢結果集的文檔數量,指定查詢返回結果數量的上限
例子:
db.student.find({"name":"joe"},{"name":1,"age":1},5)
skip跳過一定數量的結果,設置第一條返回文檔的偏移量
例子:
db.student.find({"name":"joe"},{"name":1,"age":1},5,20)
表示跳過前20條文檔
排序:-1降序,1升序
db.user.findOne()
注意事項:MongoDB不支持多集合間的連接查詢,find函數一次查詢只針對一個集合
比較查詢操作符:
比較操作符 | 對應 | 參數 |
$eq和$ne | =和!= | { |
$gt和$gte | >和>= | { |
$lt和$lte | <和<= | { |
$in和$nin | 包含 和 不包含 | { |
例子:
/*find age >22*/ db.user.find({"age":{$gt:22}})
邏輯查詢操作符:
邏輯操作符 | 對應 | 參數 | |
$and | 與 | {$and:[{條件1},..,{條件N}]} | db.user.find({$and:[{"name":"tinyphp","num":3}]}) 等同 db.user.find({"name":"tinyphp","num":3}) |
$or | 或 | {$or:[{條件1},..,{條件N}]} | |
$nor | 非 | {$nor:[{條件1},..,{條件N}]} | |
$not | 取反 | {field:{$not:{條件}}} |
元素操作符:
元素操作符 | 作用 | 如 | |
$exists | 按照字段是否存在來查詢文檔 | {field:{$exists:布爾值}} | db.user.find({"age":{$exists:true}}) 查詢存在age字段的文檔 |
$type | 選擇字段值為指定BSON數據類型編號的文檔 |
正則匹配
/* find name 開頭為j的*/ db.user.find({"name":/^j/})
$where查詢
可以結合javascript進行查詢,當javascript返回true時,才返回當前文檔
db.user.find({$where:function(){return this.name=='jack'}})
查詢時,$where操作符不能使用索引,每個文檔需要從BSON對象轉換成javascript對象后,才可以通過$where表達式運行,因此比常規查詢要慢,一般要避免使用$where查詢。
還可以存起來用:
var list=db.user.find(); list.forEach(function(x){ print(x.name); })
Update操作:
整體更新
var model=db.user.findOne({"name":"jack"}) model.age=44 db.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"})
以上就是使用JavaScript 怎么對MongoDB進行增刪查改操作,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。