TODO:MongoDB的查询更新删除总结

TODO:MongoDB的查询更新删除总结,第1张

概述介绍《TODO:MongoDB的查询更新删除总结》开发教程,希望对您有用。

《Todo:MongoDB的查询更新删除总结》要点:
本文介绍了Todo:MongoDB的查询更新删除总结,希望对您有用。如果有疑问,可以联系我们。

Todo:MongoDB的查询更新删除总结

常用查询,条件 *** 作符查询,< 、<=、>、>=、!= 对应 MongoDB的查询 *** 作符是

$lt、$lte、$gt、$gte、$ne

例:

db.getCollection('image_detail').find({"dig" : {$gte:0}})//查询大于等于0的数据

$all,$in的区别

{"dig" : {$all : [0,1]}查询出来的结果dig必须有0和1

{"dig" : {$in : [0,1]}查询出来的结果dig可以有0和1,或0,或1

有in就有not in,但是没有not all

not in的 *** 作符是$nin,{"dig" : {$nin : [0,1]},查询出来的dig值不包含0,1

$nin还有个替换的方式$in 取反 {$not : {$in : [0,1]}},巧妙的使用$not,可以解决很多使用场景

db.getCollection('image_detail').find({"dig" :{$not : {$in:[0,1]}}}

db.getCollection('image_detail').find({"dig" :{$not : {$all:[0,1]}}})

数组的or查询 *** 作符$or

db.getCollection('image_detail').find({$or:[{"dig" :{$not : {$in:[0,1]}}},{"group" : false}]})

$exists判断字段释放存在,{group:{$exists:true}}表示存在group字段,false这是不存在

db.getCollection('image_detail').find({group:{$exists:true}})

巧妙的使用null,{group:null}可以查询出group为null的记录,以及没有group字段的记录,如果要查询出字段group为null的值,就需要配合{$exists:true}的使用

db.collection.find({group:{"$in":[null],"$exists":true}})

查询记录条数使用count()

db.getCollection('image_detail').find({group:null}).count()

用sort函数排序,sort({dig:1})按升序排序,sort({dig:-1})按降序排序

db.getCollection('image_detail').find().sort({dig:1})

db.getCollection('image_detail').find().sort({dig:-1})

skip和limit语句,跳过几条记录然后查询指定数目的记录

db.getCollection('image_detail').find().sort({dig:-1}).skip(10).limit(10)

数据更新update的使用,update常用到4个参数,

第一个参数是查询条件,

第二个参数是更新语句,

第三个参数upsert 可选参数意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入;

第四个参数multi_bool可选,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新.

db.getCollection('image_detail').update({},{"$set": {"dig":3}},false,true)

数组更新push,删除pull

db.getCollection('image_detail').update({"group" : false},{"$pull": {"Tags":"图片"}},true)

db.getCollection('image_detail').update({},{"$push": {"Tags":"图片"},"$inc":{"dig":1}},true)

数组切片查询$slice,

{"Tags" : {$slice:10}}查询数据前10条记录,

{"Tags" : {$slice:-10}}查询数据后10跳记录,

{"Tags" : {$slice:[2,5}}查询第2条数据后5条跳记录

这个例子查询显示的字段为Tags,image,dig

db.getCollection('image_detail').find({},{"Tags": {"$slice":[2,3]},"_ID":0,"image":1,"dig":1})

递增的参数$inc,递减呢?

{"$inc" : {"dig":1}} 是dig字段增1,

{"$inc" : {"dig":-1}} 是dig字段减1

删除remove

db.getCollection('image_detail').find({"dig":1})

常用help

db.help()

db.find.help()

db.update.help()

《Todo:MongoDB的查询更新删除总结》是否对您有启发,欢迎查看更多与《Todo:MongoDB的查询更新删除总结》相关教程,学精学透。内存溢出PHP学院为您提供精彩教程。

总结

以上是内存溢出为你收集整理的TODO:MongoDB的查询更新删除总结全部内容,希望文章能够帮你解决TODO:MongoDB的查询更新删除总结所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1152162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存