1,原来的数据集合testcoll删掉,建立新的数据集合testcoll如下;

db.testcoll.insert({"num":1,"name":"李一","age":18,"sex":"male","job":"worker","salares":300,"score":12})
db.testcoll.insert({"num":2,"name":"没大","age":33,"sex":"female","job":"manager","salares":8000,"score":100})
db.testcoll.insert({"num":3,"name":"王五","age":80,"sex":"male","job":"worker","salares":300000,"score":80})
db.testcoll.insert({"num":4,"name":"赵六","age":12,"sex":"male","job":"engineer","salares":100,"score":90})
db.testcoll.insert({"num":5,"name":"左奔","age":20,"sex":"female","job":"worker","salares":2000,"score":80})

db.testcoll.insert({"num":6,"name":"及二","age":28,"sex":"male","job":"fda","salares":1000,"score":100})
db.testcoll.insert({"num":7,"name":"张三","age":38,"sex":"female","job":"dddd","salares":30000000,"score":0})
db.testcoll.insert({"num":8,"name":"李四","age":48,"sex":"male","job":"cccc","salares":32100,"score":0})
db.testcoll.insert({"num":9,"name":"木程","age":98,"sex":"male","job":"worker","salares":21000,"score":60})
db.testcoll.insert({"num":10,"name":"之力","age":8,"sex":"female","job":"manager","salares":3200,"score":50})

db.testcoll.insert({"num":11,"name":"工作","age":23,"sex":"male","job":"engineer","salares":300,"score":40})
db.testcoll.insert({"num":12,"name":"压力","age":34,"sex":"female","job":"wfa","salares":3020,"score":0})
db.testcoll.insert({"num":13,"name":"脸左","age":45,"sex":"male","job":"wfdafar","salares":20000,"score":20})
db.testcoll.insert({"num":14,"name":"顶级","age":32,"sex":"male","job":"wofdafda","salares":10000,"score":21})

2,对集合求mod操作,$mode,[can1,can2],表示对该字段求can1的模,余数是can2,下面两种方式都可以,结果如下截图
db.testcoll.find( { num: { $mod: [ 4, 0 ] } } ).pretty()
db.testcoll.find( { "num": { "$mod": [ 4, 0 ] } } ).pretty()

3,范围操作:$in  ,$nin,
在集合testcoll中找到name是张三,李四,工作的人
db.testcoll.find({"name":{"$in":["张三","李四","工作"]}}).pretty()

在集合testcoll中找到name不是张三,李四,工作的人
db.testcoll.find({"name":{"$nin":["张三","李四","工作"]}}).pretty()
4,数组操作查询,在集合中增加数组
db.testcoll.insert({"num":15,"name":"顶级","age":32,"sex":"male","job":"wofdafda","salares":10000,"score":21,"course":["语文","数学","英语"]})
db.testcoll.insert({"num":16,"name":"顶级","age":22,"sex":"female","job":"wofdafsda","salares":5000,"score":221,"course":["语文","数学","英语","meishu"]})
查询同时参加语文和数学的学生
db.testcoll.find({"course":{"$all":["语文","数学"]}}).pretty()

也可以单个查询:
db.testcoll.find({"age":{"$all":[18]}}).pretty()

用数组索引进行查询,索引从0下标开始
db.testcoll.find({"course.1":"数学"}).pretty()

查询只参加三门课的学生
db.testcoll.find({"course":{"$size":3}}).pretty()

查询年纪22,取课程前两门的信息
db.testcoll.find({"age":22},{course:{$slice:2}}).pretty()

查询年纪22,取课程后两门的信息
db.testcoll.find({"age":22},{course:{$slice:-2}}).pretty()

查询年纪22,课程跳过第一个显示后两门的信息
db.testcoll.find({"age":22},{course:{$slice:[1,2]}}).pretty()

数组的操作非常重要,大家要好好掌握并灵活运用。

MongoDB 在windows shell环境下的基本操作和命令的使用示例(三)相关推荐

  1. Linux/unix不同shell环境下数值运算的处理

    在阅读本文前,您需要对变量替换.命令替换和数值替换有一点认识. 阅读完本文,您应该获得解决下列问题的信息: 不同shell(bash,csh,ksh)下如何处理数值的运算 常用来数值运算的命令 关于运 ...

  2. zbb20180619 mysql windows环境下MySQL重启的命令行说明

    windows环境下MySQL重启的命令行说明 windows+R  弹出运行框   在运行框中输入cmd  + 回车  进入系统的dos窗口 .启动mysql:输入 net start mysql; ...

  3. Windows 环境下查看 Redis 版本号命令

    Windows 环境下查看 Redis 版本号命令: // Redis 客户端输入info server// 结果 # Server redis_version:3.2.100 redis_git_s ...

  4. Windows 7环境下ZTE U880 通过PC无线网卡共享上网的详细设置

    Windows 7环境下ZTE U880 通过PC无线网卡共享上网的详细设置 一.环境说明: PC端环境: l  Thinkpad X200 l  WIN7 64X l  无线网卡 手机端: l  Z ...

  5. Windows网络环境下网络规划需要掌握的计算方法(一)

    我是荔园微风,作为一名在IT界整整25年的老兵,今天总结一下Windows网络环境下网络规划必须掌握的技能:网络规划计算.今天先来讲讲第一个知识点,就是如何知道你的网络里有多少数据在跑. 不知道大家有 ...

  6. Linux Shell环境下用jq命令处理json文件

    有时候需要在Shell环境下处理json文件,这时使用jq命令非常方便. 安装 CentOS下可以直接通过yum安装: yum install jq -y 使用方法 假设有一个名为test.json的 ...

  7. 红旗linux shell方式下配置声卡的命令是:,‘红旗杯’linux大赛——基础知识2

    1. 在chmod 命令中,-v参数的作用是: A. 详细说明组的变化 *B. 详细说明权限的变化 C. 改变本目录及其所有子目录的文件的权限 D. 在文件的权限确实改变时进行详细的说明 2. 为了显 ...

  8. 红旗linux shell方式下配置声卡的命令是:,linux基础知识1

    1. 在chmod 命令中,-v参数的作用是: A. 详细说明组的变化 *B. 详细说明权限的变化 C. 改变本目录及其所有子目录的文件的权限 D. 在文件的权限确实改变时进行详细的说明 2. 为了显 ...

  9. 怎么判断linux22端口是否通,在Linux环境下使用SSH判断端口是否通(示例代码)

    在Linux环境下使用SSH判断端口是否通 在windows/linux环境下,可以使用telnet判断端口状态,但有时候在Linux环境下没有telnet,所以可以使用ssh判断端口状态. 一.ss ...

  10. ECStore在Win环境下如何运行CMD命令

    大多数程序员使用windows开发环境来做ECStore二次开发,经常需要使用 ECStore自带的cmd命令进行一些系统操作,如清除缓存(cacheclean),升级程序(update),创建新的a ...

最新文章

  1. 机器学习之深入理解SVM
  2. ACM训练赛--递推专题
  3. centos7下kafka2.12-2.1.0的安装及使用
  4. 平战结合供应保障体系-国情讲坛·周荣江:谋定突发公共事件
  5. 视网膜脱落相关知识(持续更新中)
  6. python pandas serie简介及基本使用
  7. WSDL4J解析WSDL文件方法
  8. a标签鼠标放上去变色_一切为了集齐一套装备:杜伽LEO600游戏鼠标和P300鼠标垫简评...
  9. 【Mac新资讯】搭载Apple M2 晶片的Mac要来啦!是否值得期待
  10. 使PNG图片在IE6下透明(非背景图片)
  11. 【操作系统】实验四 主存空间的分配和回收
  12. 题目242-计算球体积
  13. Interface Project
  14. iOS 开发 初级:应用内购买 In-App Purchase
  15. 揭开特斯拉的地图“疑云”
  16. 信创操作系统--统信UOS桌面版(登录与激活统信:直接登录、远程登录、锁屏、电源管理、激活)
  17. 【java】判断一个数是奇数还是偶数
  18. 三菱Q程序,主站Q06UDE+QD75P4定位模块
  19. Windows Server 2016 新功能HCI(超融合基础架构) By S2D
  20. PDF文件打开密码忘记了可以取消吗

热门文章

  1. lua-TestMore(转)
  2. java 基础--类与对象的创建,引用,static静态方法的创建与使用,static变量
  3. 常用方法总结--文件操作篇
  4. 复合存储引擎的设计和实现(包含ORM和内容存储)
  5. wordpress文章,页面,小工具如何使用php代码
  6. vue+element+node构建单片机控制系统
  7. matlab gui怎样将结果保存在excel中_声发射简单使用matlab导入参数波形数据并绘图...
  8. java 云 代码_我 - java代码库 - 云代码
  9. python数据库教程_python使用mysql操作教程
  10. 安卓开发要学多久_开发微信小程序需要多久?流程有哪些?