查询某个字段是否存在

db.student.findOne({name:{$exists:true}})

db.student.findOne({'department.name':{$exists:true}})

db.student.findOne({'department.name':{$exists:false}})

-------------------------------------------------------------------------------

判断map对象是否为空,注意不能通过$gt,$lt来判断size大小,可以利用索引来判断

db.student.find({class: {$not: {$size: 0}}}).limit(2)

db.student..find({'class.0': {$exists: 1}})

----------------------------------------------------------------------------------

判断一个数组的size

db.student..find({'class': {$size: 3}})

db.student.find({ $where: "this.class.length < 3" })

---------------------------------------------------------------------------------

格式化输出

select top 1 *from student;

db.student.findOne()

select top 1 *from student where age>15;

db.student.findOne({age:{$gt:15}})

select class,department from student where name='shell' and gender=true;

db.student.findOne({name:shell,gender:true},{class:1,department:1})

---------------------------------------------------------------------------------

游标跳转查询和限定返回的个数

db.department.find().skip(10)

select top 10 *from department;

db.department.find().limit(10)

---------------------------------------------------------------------------------

值返回指定字段,第一个map写filter条件,第二个map写返回的字段,默认会返回_id,如果不需要可以设置_id:0

db.student.find({},{name:1,id:1}

db.student.find({},{name:1,id:1,_id:0}

--------------------------------------------------------------------------------------

查询总数

db.student.find().count()

db.student.find({age:{$lt:20}}).count()

-----------------------------------------------------------------------------------

更新和删除某个字段:删除第一个class和修改更新时间为当前时间

更新或添加字段使用$set

删除字段使用unset

db.student.update({id:10005},{$unset:{'class.0':1},$set:{updated:NumberLong(new Date().valueOf()/1000)}})

------------------------------------------------------------------------------------

kill锁

先用这个命令查看锁,找到你要kill的pid

db.currentOp()

将上一步查找到的pid写入括号内,执行以下命令就干掉了

db.killOp(pid)

-------------------------------------------------------------------------------------

重命名字段

db.test.update({}, {$rename : {"a" : "b"}}, false, true)

-------------------------------------------------------------------------------------

在数组中插入元素

db.users.update({"name":"zhang"},{"$addToSet":{"age":18}})

-------------------------------------------------------------------------------------

删除整条记录

delete from test where key='test1';

db.test.remove({'key':'test1'})

mongo日常命令集锦的更多相关文章

  1. Windows命令行命令集锦

    原文:Windows命令行命令集锦 转自:http://www.me2wg.com/bbs/forum.php?mod=viewthread&tid=15830 winver--------- ...

  2. win7+win10系统使用日常经验集锦

    请保留此份 Cmd Markdown 的欢迎稿兼使用说明, 当然你也可以使用彩色字体. 或者使用小体字. 或者使用大体字. 如需撰写新稿件,点击顶部工具栏右侧的 新文稿 或者使用快捷键 Ctrl+Al ...

  3. windows常用命令集锦

    开始→运行→输入的命令集锦 gpedit.msc-----组策略 sndrec32-------录音机 Nslookup-------IP地址侦测器 explorer-------打开资源管理器 lo ...

  4. windows 开始→运行→命令集锦

    windows 开始→运行→命令集锦 来源于网络,侵权请通知我删除 命令 说明 vwinver 检查Windows版本 wmimgmt.msc 打开windows管理体系结构(WMI) wupdmgr ...

  5. mysql常用命令集锦

    一.DCL语句(数据控制语句) 1.授权远程访问,针对IP和用户.DB的 grant {privilege list} on {dbname}.* to '{user}'@'{ip}' identif ...

  6. mongo常用命令

    1.由于mongo没有关系型数据库常用,一些基础的命令容易忘记 db.table.update( { "_id" : xxx } , { $set : { "field1 ...

  7. 【linux】常用命令集锦&持续更新...

    滴:转载引用请注明哦[握爪]:https://www.cnblogs.com/zyrb/p/9709013.html  对深度学习训练及日常work中的常用linux命令进行整理. [一]screen ...

  8. mongo中命令工作原理

    1.db.runCommand命令 db.runCommand({OPTION:'COLLECTION_NAME'}) runCommand命令是mongo的执行命令,可以执行mongo的任何命令,其 ...

  9. mongodb系列~mongo常用命令

    mongodb常用命令大全1 索引相关命令 db.chenfeng.ensureIndex({"riqi":1}) 添加索引会阻塞nohup mongo --eval " ...

随机推荐

  1. Life Forms[poj3294]题解

    Life Forms Description - You may have wondered why most extraterrestrial life forms resemble humans, ...

  2. Linux安装U盘启动报错Failed to load ldlinux.c32

    报错信息 使用U盘安装linux无法正常启动 Start booting from USB device... SYSLINUX 5.10 EDD 2013-06-04 Copyright (C) 1 ...

  3. 使用ESLint+Prettier来统一前端代码风格

    Prettier 简单使用 ESLint 与 Prettier配合使用 首先肯定是需要安装 prettier ,并且你的项目中已经使用了 ESLint ,有 eslintrc.js 配置文件. npm ...

  4. 辣些数据结构的思维题(思维题好难一个都不会TAT)

    洛谷P1268 树的重量 我觉得难点在于把每个叶子节点想象成分出来的叉 然后如果c是a--b这条边上分出来的,可以通过Dab,Dca,Dcb算出分叉边的长度, 长度=(Dac+Dbc-Dab)/2 怎 ...

  5. [国家集训队] Crash的数字表格 - 莫比乌斯反演,整除分块

    考虑到\(lcm(i,j)=\frac{ij}{gcd(i,j)}\) \(\sum_{i=1}^n\sum_{j=1}^m\frac{ij}{gcd(i,j)}\) \(\sum_{d=1}^{n} ...

  6. [ZJOI2007] 矩阵游戏 - 二分图匹配

    题意:问一个\(0-1\)方阵是不是非奇异的 其实我真的很想求行列式 #include <bits/stdc++.h> using namespace std; #define N 505 ...

  7. PHP实现导出CSV文件

    在做导出一个信息表为excel文件这个功能完成之后,自己用得好好的,但是到HR那边就告诉我导出的文件无法用她电脑上的office打开,心想,兼容没做好,想问下她的版本号,结果半天没回复消息.我老大来了 ...

  8. SSM项目集成Lucene+IKAnalyzer在Junit单元测试中执行异常

    个人博客 地址:http://www.wenhaofan.com/article/20181108132519 问题描述 在项目运行以及main方法中能够正常运行,但是使用junit单元测试时却报如下 ...

  9. c# 嵌入资源并读取

    原文:c# 嵌入资源并读取 1. 右键点击项目,选择资源,然后选择资源的类型,插入资源. 2. 这时候在项目的目录树上会出现一个Resource的文件夹,找到嵌入的资源文件,右击属性,在 Build ...

  10. Python连接操作数据库

    步骤: 1.创建与数据库的连接对象: 2.创建游标: 3.通过游标执行语句 4.增删改需要提交(commit)数据 5.关闭连接 如: import MySQLdb   # Python通过MySQL ...