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

mongodb find update remove

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

  1. 常用查询,条件操作符查询,< 、<=、>、>=、!= 对应 MongoDB的查询操作符是$lt、$lte、$gt、$gte、$ne

    例:

    db.getCollection(‘image_detail’).find({“dig” : {$gte:0}})//查询大于等于0的数据

  2. $all,$in的区别{“dig” : {$all : [0,1]}查询出来的结果dig必须有0和1

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

  3. 有in就有not in,但是没有not allnot in的操作符是$nin,{“dig” : {$nin : [0,1]},查询出来的dig值不包含0,1
  4. $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]}}})

  5. 数组的or查询操作符$ordb.getCollection(‘image_detail’).find({$or:[{“dig” :{$not : {$in:[0,1]}}},{“group” : false}]})
  6. $exists判断字段释放存在,{group:{$exists:true}}表示存在group字段,false这是不存在db.getCollection(‘image_detail’).find({group:{$exists:true}})
  7. 巧妙的使用null,{group:null}可以查询出group为null的记录,以及没有group字段的记录,如果要查询出字段group为null的值,就需要配合{$exists:true}的使用db.collection.find({group:{“$in”:[null],”$exists”:true}})
  8. 查询记录条数使用count()db.getCollection(‘image_detail’).find({group:null}).count()
  9. 用sort函数排序,sort({dig:1})按升序排序,sort({dig:-1})按降序排序db.getCollection(‘image_detail’).find().sort({dig:1})

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

  10. skip和limit语句,跳过几条记录然后查询指定数目的记录db.getCollection(‘image_detail’).find().sort({dig:-1}).skip(10).limit(10)
  11. 数据更新update的使用,update常用到4个参数,第一个参数是查询条件,

    第二个参数是更新语句,

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

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

    db.getCollection(‘image_detail’).update({}, {“$set”: {“dig”:3}},false,true)

  12. 数组更新push,删除pulldb.getCollection(‘image_detail’).update({“group” : false},{“$pull”: {“tags”:”图片”}},false,true)

    db.getCollection(‘image_detail’).update({},{“$push”: {“tags”:”图片”},”$inc”:{“dig”:1}},false,true)

  13. 数组切片查询$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})

  14. 递增的参数$inc,递减呢?{“$inc” : {“dig”:1}} 是dig字段增1,

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

  15. 删除removedb.getCollection(‘image_detail’).find({“dig”:1})
  16. 常用helpdb.help()

    db.find.help()

    db.update.help()


    wxgzh:ludong86


相关推荐

  • 再见小红点,iPhone不越狱删除系统更新角标提醒教程 就目前的ios来说,都是有效的,以后是否有效并不清楚。下面就请那些动手能力强一点的强迫症患者动动手自己消除那烦银的小红点。1下载iBackupBot并安装。(哪里有的下?问度娘。)2打开iTunes备份你的iPhone了(itunes哪里下
  • hibernate对数据库的其他操作,删除、查询、修改。 hibernate对数据库的其他操作,删除、查询、修改。Hibernate对数据删除操作删除User表中个一条数据,是需要更具User表的主键id值来删除的。首先根据id值向数据库中查询出来对应的对象。可以采用两种方式一是session的g
  • 手机微信聊天记录删除了怎么查询 手机微信聊天记录删除了怎么查询关于删了的微信聊天记录能找回吗的问题,小编请教了业内的数据恢复专家,据专家介绍,绝大多数情况下手机微信聊天记录存储于手机存储卡里,误删除之后虽然这部分聊天记录不会显示,但事实上仍然保留在手机存储卡内。如果选择使
  • SQL语句添加、删除、更新、查询、函数用法(转发) 添加、删除、修改使用db.Execute(Sql)命令执行操作╔----------------╗☆数据记录筛选☆╚----------------╝注意:单双引号的用法可能有误(没有测式)Sql="SelectDi
  • 删除iphone自动更新固件的路径 一、删除iphone自动更新下载的固件路径设置--软件更新会自动下载固件这会占用大家iPhone的局促空间如若想删除用一下路径(必须越狱)1.正在下载中还没下载完的路径:var/mobile/media/downloads2.已经下载完毕的
  • 清理windows update自动更新补丁产生的可删除文件(转) WindowsUpdate都是将更新下载到临时文件夹中,然后对系统文件进行更新,更新后会自动清除临时文件夹,所以并没有你说的.exe文件存在。你可以通过下面的方法来删除与更新有关的文件夹,这样可以释放出一些空间。重命名Catroot2文件夹
  • Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结 Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结说明:在创建数据库时输入的密码,是修改系统默认的密码,以system和sysman等系统默认身份登录时要输入的密码就是修改后的密码(创建数据库时输入的密码)如果要创建新的用
  • Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结 转自http://yesican.blog.51cto.com/700694/180021标签:Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结说明:在创建数据库时输入的密码,是修改系统默认的密码,以system和sys
  • Win10系统更新失败的补丁文件如何删除的方法   众所周知,微软时常会推送一些windows10系统的更新补丁,而大部分用户都会选择安装更新。不过我们在更新时,难免会碰到更新失败的问题。为了系统安全,我们必须及时删除这些更新失败的补丁文件。这该如何操作呢?不少用户一时不知道方法,下面就
  • RPM的详细演示安装、删除和查询 2 查询query命令的语法为:rpm-q[information-options][package-options]rpm--query[information-options][package-options]查询选项有两个子集:包选择选项
  • 论坛帖子中指定内容批量删除的sql命令一些总结 很多discuz论坛站长朋友,用户无可避免的都会遇到自己的论坛网站会有些垃圾评论和垃圾帖子。无忧主机php独立ip空间中小编也遇到过这样的问题。如果要一个一个的删除,确实是有些麻烦。为了节省不必要的时间,我们就需要进行一个批量删除,批量清空
  • mysql 数据库文件导入和更新删除 linux环境的搭建:http://linux.cn/article-571-1.html一、文件的移动1、文件的复制cpdm.sql/home/work2、文件的删除rmdm.sql3、文件夹的删除有提醒rm-rdm.sql4、文件夹的删

你的评论

就没有什么想说的吗?

最新博客

关于我们 加入传客 媒体报道 帮助中心 传客活动 免责声明 联系我们 移动版 移动应用

©2017传客网    琼ICP备15003173号-2    

本站部分文章来源于互联网,版权归属于原作者。
本站所有转载文章言论不代表本站观点,如是侵犯了原作者的权利请发邮件联系站长(weishubao@126.com),我们收到后立即删除。
站内所有资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!

X