MongoDB中数据库的操作(增删改查)
1.查询students集合,只返回一条数据。
db.students.findOne()
db.students.find().limit(1)
db.students.aggregate({$limit:1})
2.根据你查询出来的记录的结构,使用你自己的数据,构造一个文档,并将这个文档写入students集合。
var myself = {"name": "王小王-123","gender": 1,"body": {"height": 166,"weight": 66},"phone": "1666666666","sno": 2019814,"major": "应用数学","grade": 2019,"class": 2,"courses": [{"course": "分布式数据库原理与应用","credit": 4,"score": 99}]
}
db.students.insert(myself)
3.根据你自己的记录数据,查询比你长得高或者和你一样高的学生记录 (比较运算符)
var 我的身高 = 166
var 查询条件 = {"body.height":{$gte:我的身高}}
db.students.find(查询条件)
4.根据你自己的记录数据,查询体重和你相差不超过2kg的学生记录
var 上限 = 66+2
var 下限 = 66-2
var 查询条件 = {"body.weight":{$gte:下限,$lte:上限}}
db.students.find(查询条件)
5.统计你所在专业的学生人数
db.students.count({major:"应用数学"})
6.列出所有课程的名称
db.students.distinct("courses.course")
7.将你所在班级的所有同学标记为同班同学(增加一个新字段:{'关系':'同班同学'}) UPDATE操作
var 同班同学 = {"major":"应用数学","grade":2019,"class":2}
var 同班同学不包括我 = {"major":"应用数学","grade":2019,"class":2,"sno":{$ne:2019814}}
var 同班同学不包括我们 = {"major":"应用数学","grade":2019,"class":2,"sno":{$nin:[2019814,2019813]}}
db.students.find(同班同学)
var 添加字段 = {$set:{'关系':'同班同学'}}
db.students.updateMany(同班同学,添加字段)
db.students.find({'关系':'同班同学'})
8.找到你班上身高最高的3名同学,并删除这些记录
var 同班同学 = {"major":"应用数学","grade":2019,"class":2}
var 同班同学 = {'关系':'同班同学'} // 第7题的结果
var 找同班同学 = {$match:同班同学}
var 按身高从大到校排序 = {$sort:{"body.height":-1}}
var 取头三个 = {$limit:3}
var res = db.students.aggregate([找同班同学,按身高从大到校排序,取头三个])db.students.delete({sno:{$in:[2016000242,2016000181,17059434737]}})
这样的命令比较的不够智能,所以我重写了一个JavaScript代码进行迭代删除,不需要自己呆板的获取前面三个数据的名称,如下:
//首先找到你班上身高最高的3名同学:
var 查询条件={"major": "应用数学","grade": 2019,"class": 2}
db.students.find(查询条件).sort({'body.height':-1}).limit(3)//循环删除
var 查询条件={"major": "应用数学","grade": 2019,"class": 2}
var 返回结果 =db.students.find(查询条件,{_id:0,name:1}).sort({'body.height':-1}).limit(3)
for(var i=0; i<返回结果.length(); i++) {db.students.remove(返回结果[i])print(返回结果[i]);
};//再次查询,记录已删除
var 查询条件={"major": "应用数学","grade": 2019,"class": 2}
db.students.find(查询条件).sort({'body.height':-1}).limit(3)
每文一语
没有一蹴而就的成功,只有默默坚持的渐进
MongoDB中数据库的操作(增删改查)相关推荐
- 数据库的操作 增删改查 mysql
数据库的操作 增删改查 mysql 登陆数据库 查看全部的数据库 系统提供的库,除了 test 是给我们练手的 其它的不要碰 mysql库,保存了系统重要内容,比如帐户 root帐户的用户名,密码,就 ...
- jQuery库的简单使用:jQuery中的 DOM 操作,增删改查,复制,替换,包裹,属性和样式操作
jQuery中的 DOM 操作 查 查找属性节点: 通过 jQuery 选择器完成. 操作属性节点: 查找到所需要的元素之后, 可以调用 jQuery 对象的 attr() 方法来获取它的各种属性值 ...
- ios mysql 创建不同的用户表_iOS中数据库-创建表-增删改查数据-基础语法
什么是SQL:结构化查询语言.create创建表drop删除表,delete是删除表中的数据 SQL语句不区分大小写,每条语句必须以分号结束,数据库中不可以使用关键字用为表名(sql常用关键字 se ...
- flask中数据库的基本操作-增删改查【备忘】
1.增加数据(就相当于增加一个实例对象) user1 = User(name='long',email='1006550026@qq.com',password='123456',role_id= ...
- java调用oracle删除,使用IDEA对Oracle数据库进行简单增删改查操作
1.1 java中的数据存储技术 在java中,数据库存取技术可分为如下几类: 1.jdbc直接访问数据库 2.jdo(java data object)是java对象持久化的新的规范,也是一个用于存 ...
- python数据库教程_Python连接mysql数据库及简单增删改查操作示例代码
1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...
- Mongodb命令操作增删改查
Mongodb命令操作增删改查 需求描述 新增5 人 查询 修改 删除 数据结构 {"_id" : ObjectId("59f938235d93fc4af8a37114& ...
- python操作数据库教程_Python连接mysql数据库及简单增删改查操作示例代码
1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...
- 爬虫使用mysql创建新数据库并进行增删改查操作
前言: 本文参考:Python3使用mysql创建新数据库并进行增删改查操作https://blog.csdn.net/Anwel/article/details/79919646 该文章描述了爬虫爬 ...
- sqlite数据库的基本增删改查操作
2019独角兽企业重金招聘Python工程师标准>>> 效果图示例 1.在清单里添加相应的权限 <uses-permission android:name="andr ...
最新文章
- 属性被分为八大类不包括_乙肝病毒携带者分为几类?主要有5类,包括乙肝表面抗原阳性患者...
- 《研磨设计模式》chap14 迭代器模式(2)算工资举例
- 左右TextView旋转门问题
- 网狐棋牌(十) 成也萧何败也肖何? IUnknowEx
- Java从零开始(二) Tomacat
- jhsdb:JDK 9的新工具
- console application_灵活使用 console 让 js 调试更简单
- 一张图看懂阿里云新发布的物联网设备上云神器——HiTSDB + IoT套件
- Win11怎么从Dev渠道换Beta渠道?Win11从Dev渠道换Beta渠道的方法
- Kubernetes Ingress入门指南和实践练习
- wowza 技术交流群/ wowza 流媒体软件交流群
- 计算机信息检索工作的原理,2021年湖北自考计算机信息检索课程考试大纲
- 计算机网上邻居怎么隐藏,Win7桌面不显示网上邻居图标方法 win7系统如何隐藏网上邻居图标...
- HDFS常用命令总结
- 硕士转计算机科学,普利茅斯大学计算机科学(转专业)理学硕士研究生申请要求及申请材料要求清单...
- 如果你觉得累,这三个“高内耗”行为,一定要戒掉!
- 浏览器获取mac地址_真香浏览器,时隔2个月终于又更新了!!!
- 2021年山东大学软件学院项目实训记录(第一周)
- 传感器检测与转换技术QY-CG810B
- (OK) 编译内核及移植MPTCP过程 - 树莓派 3B - (北邮张成文老师组)本科生 - 杨翔 - 周煊赫 - 研究生 - 黎增城
热门文章
- revit应用程序无法启动_启动Revit时显示“应用程序无法正确启动”
- 今抖云创——各大短视频平台争夺用户
- 在VirtualBox安装华为openGauss(基于华为指导手册)
- 干货!深度解读湘钢5G智慧钢铁改造
- 麦芒6可以升级鸿蒙,华为麦芒6怎么样?麦芒6评测:不仅仅适合年轻人
- linux 僵尸进程查看及删除
- (一)Scala环境搭建
- Flutter下实现低延迟的跨平台RTSP/RTMP播放
- uni-app零基础入门到项目实战
- android是苹果手机吗,技术角度分析:这就是苹果手机和安卓手机为什么有差距的主要原因...