日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

java调用js查询mongo_MongoDB增删查改操作示例【基于JavaScript Shell】

發布時間:2024/9/27 javascript 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java调用js查询mongo_MongoDB增删查改操作示例【基于JavaScript Shell】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例講述了MongoDB增刪查改操作。分享給大家供大家參考,具體如下:

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查詢操作:

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

=和!=

{:{$eq:}}

$gt和$gte

>和>=

{:{$gt:}}

$lt和$lte

{:{$lt:}}

$in和$nin

包含 和 不包含

{:{$in:[,]}}

例子:

/*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"})

希望本文所述對大家MongoDB數據庫程序設計有所幫助。

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的java调用js查询mongo_MongoDB增删查改操作示例【基于JavaScript Shell】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。