mongo基本使用方法

mongo与关系型数据库的概念对比,区分大小写,_id为主键。

 

1.数据库操作

>show dbs   #查看所有数据库

>use dbname    #创建和切换数据库(如果dbname存在则切换到该数据库,不存在则创建并切换到该数据库;新创建的数据库不会显示,需要插入记录才会显示)

>db.dropDatabase()  #删除数据库(需要先use进入到需要删除的数据库)

 

2.集合操作

>show collections或者show tables  #查看集合(需要先use进入数据库)

>db.createCollection(集合名字,参数)   #创建集合

>db.集合名.drop()   #删除集合

 

3.文档操作

>db.集合名.insert(文档)   #插入文档,如果集合在该数据库中不存在会先创建集合

>db.col.insert({title: 'MongoDB教程', description: 'MongoDB是一个Nosql数据库',by: '菜鸟教程',url: 'https://www.runoob.com/mongodb/mongodb-tutorial.html',tags: ['mongodb', 'database', 'NoSQL'],likes: 100
})>db.col.insert({title: 'MySQL教程', description: 'MySQL是一个sql数据库',by: '菜鸟教程',url: 'https://www.runoob.com/mysql/mysql-tutorial.html',tags: ['MySQL', 'database', 'SQL'],likes: 200
})

 

 

>db.集合名.find(查询条件).pretty()   #查询文档,find是以非结构化的形式显示所有文档,加上pretty()以结构化的形式显示

对应的findOne方法返回第一个满足条件的文档

> db.col.find().pretty()
{"_id" : ObjectId("5d2e94f240515ad8a4693240"),"title" : "MongoDB教程","description" : "MongoDB是一个Nosql数据库","by" : "菜鸟教程","url" : "https://www.runoob.com/mongodb/mongodb-tutorial.html","tags" : ["mongodb","database","NoSQL"],"likes" : 100
}
{"_id" : ObjectId("5d2e960d40515ad8a4693241"),"title" : "MySQL教程","description" : "MySQL是一个sql数据库","by" : "菜鸟教程","url" : "https://www.runoob.com/mysql/mysql-tutorial.html","tags" : ["MySQL","database","SQL"],"likes" : 200
}

 

 

>db.集合名.update(查询条件,更新操作,{upsert: <boolean>,multi: <boolean>,writeConcern: <document>})     #更新文档

  • upsert : 可选,如果不存在update的记录是否插入为新记录,true为插入,默认是false不插入。
  • multi : 可选,默认是false,只更新找到的第一条记录,如果设置为true则将按条件查出来的所有记录全部更新。
  • writeConcern :可选,抛出异常的级别。
> db.col.update({by:'菜鸟教程'},{$set:{likes:500}},{upsert:true,multi:true}) WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

 

>db.集合名.save(文档)      #更新文档 

根据_id进行判断,如果要save的记录在原集合中存在,则按照内容对已存在的文档进行更新,如果不存在则进行插入。

> db.col.save({"_id" : ObjectId("5d2e960d40515ad8a4693241"),title: 'Python教程',description: 'Python是一种解释型、面向对象、动态数据类型的高级程序设计语言',by: '菜鸟教程',url: 'https://www.runoob.com/python3/python3-tutorial.html',tags: ['Python', '开发', '编程'],likes: 1000})WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

 

db.col.save({"_id" : ObjectId("5d2e960d40515ad8a4693250"),title: 'HTML',description: '是一种用于创建网页的标准标记语言',by: '菜鸟教程',url: 'https://www.runoob.com/html/html-tutorial.html',tags: ['HTML', '前端', '编程'],likes: 300
})
WriteResult({ "nMatched" : 0, "nUpserted" : 1, "nModified" : 0 })

 

>db.集合名.remove(查询条件,justOne,writeConcern )   #删除文档 

  • query :(可选)删除的文档的条件。
  • justOne : (可选)如果设为 true 或 1,只删除一个文档,不设置该参数使用默认值 false,删除所有匹配条件的文档。
  • writeConcern :(可选)抛出异常的级别。
>db.col.remove({by:'菜鸟教程'},1)
WithResult({"nRemoved":1})
>db.col.remove({by:'菜鸟教程'})
WithResult({"nRemoved":2})


db.col.remove({})删除所有文档

 

转载于:https://www.cnblogs.com/Forever77/p/11199289.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/392523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode 62. 不同路径(dp)

一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为“Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为“Finish”&#xff09;。 问总共有多少条不同的路径&#xff1f; 例如&…

第一名数据科学工作冠状病毒医生

背景 (Background) 3 years ago, I had just finished medical school and started working full-time as a doctor in the UK’s National Health Service (NHS). Now, I work full-time as a data scientist at dunnhumby, writing code for “Big Data” analytics with Pyt…

mysql时间区间效率_对于sql中使用to_timestamp判断时间区间和不使用的效率对比及结论...

关于日期函数TO_TIMESTAMP拓展&#xff1a;date类型是Oracle常用的日期型变量&#xff0c;时间间隔是秒。两个日期型相减得到是两个时间的间隔&#xff0c;注意单位是“天”。timestamp是DATE类型的扩展&#xff0c;可以精确到小数秒(fractional_seconds_precision)&#xff0c…

ajax 赋值return

ajax 获得结果后赋值无法成功&#xff0c; function grades(num){ var name"";   $.ajax({    type:"get",     url:"",     async:true,     success:function(result){     var grades result.grades;     …

JavaScript(ES6)传播算子和rest参数简介

by Joanna Gaudyn乔安娜高登(Joanna Gaudyn) JavaScript(ES6)传播算子和rest参数简介 (An intro to the spread operator and rest parameter in JavaScript (ES6)) 扩展运算符和rest参数都被写为三个连续的点(…)。 他们还有其他共同点吗&#xff1f; (Both the spread opera…

python爬虫消费者与生产者_Condition版生产者与消费者模式

概述&#xff1a;在人工智能来临的今天&#xff0c;数据显得格外重要。在互联网的浩瀚大海洋中&#xff0c;隐藏着无穷的数据和信息。因此学习网络爬虫是在今天立足的一项必备技能。本路线专门针对想要从事Python网络爬虫的同学而准备的&#xff0c;并且是严格按照企业的标准定…

【Python包】安装teradatasql提示找不到pycryptodome模块错误(pycrypto,pycryptodome和crypto加密库)...

1.问题描述 安装teradatasql时&#xff0c;出现错误Could not find a version that satisfies the requirement pycryptodome&#xff0c;具体如下&#xff1a; 2.解决方法 查看Python第三方库目录$PYTHON_HOME/lib/python3.6/site-packages目录下没有pycryptodome目录&#xf…

leetcode 860. 柠檬水找零(贪心算法)

在柠檬水摊上&#xff0c;每一杯柠檬水的售价为 5 美元。 顾客排队购买你的产品&#xff0c;&#xff08;按账单 bills 支付的顺序&#xff09;一次购买一杯。 每位顾客只买一杯柠檬水&#xff0c;然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零&#xff0…

简述yolo1-yolo3_使用YOLO框架进行对象检测的综合指南-第二部分

简述yolo1-yolo3In the last part, we understood what YOLO is and how it works. In this section, let us understand how to apply it using pre-trained weights and obtaining the results. This article is greatly inspired by Andrew Ng’s Deep Learning Specializat…

ubuntu配置JDK环境

>>>cd /usr/lib >>>mkdir java >>>cd java ###这里的参数表示接收他们的协议 >>>wget --no-check-certificate --no-cookies --header "Cookie: oraclelicenseaccept-securebackup-cookie" http://download.oracle.com/otn-pub/…

java cxf 调用wcf接口_JAVA 调用 WCF 服务流程

1. 将 WCF 服务发布到 Windows 服务(或者 IIS)此步骤的目的是为 WCF 服务搭建服务器&#xff0c;从而使服务相关的 Web Services 可以被 JAVA 客户端程序调用&#xff0c;具体步骤参考如下&#xff1a;(1) 发布到 Windows 服务(2) 发布到 IIS注&#xff1a;如果是将 WCF 服务…

react第三方组件库_如何自定义您的第三方React组件

react第三方组件库by Jacob Goh雅各布高 如何自定义您的第三方React组件 (How to customize your third party React components) Component libraries make our lives easier.组件库使我们的生活更轻松。 But as developers, you might often find yourselves in situations…

gcp devops_将GCP AI平台笔记本用作可重现的数据科学环境

gcp devopsBy: Edward Krueger and Douglas Franklin.作者&#xff1a; 爱德华克鲁格 ( Edward Krueger)和道格拉斯富兰克林 ( Douglas Franklin) 。 In this article, we will cover how to set up a cloud computing instance to run Python with or without Jupyter Notebo…

迅为工业级iMX6Q开发板全新升级兼容PLUS版本|四核商业级|工业级|双核商业级...

软硬件全面升级 1. 新增Yocto项目的支持 增加opencv等软件功能 2. 新近推出i.MX6增强版本核心板&#xff08;PLUS&#xff09; -性能更强 四种核心板全兼容 四核商业级2G/16G&#xff1b;双核商业级1G/8G &#xff1b;四核工业级1G/8G &#xff1b;四核增强版(PLUS) 3. 豪华配…

flume 中的 hdfs sink round 和roll

http://blog.csdn.net/kntao/article/details/49278239 http://flume.apache.org/FlumeUserGuide.html#exec-source 默认的是是SequenceFile所以数据存在hdfs上通过命令查看的时候会是乱码,如果此时需要修改filetype和writeFormat来修改 hdfs.fileTypeSequenceFileFile format:…

leetcode 649. Dota2 参议院(贪心算法)

Dota2 的世界里有两个阵营&#xff1a;Radiant(天辉)和 Dire(夜魇) Dota2 参议院由来自两派的参议员组成。现在参议院希望对一个 Dota2 游戏里的改变作出决定。他们以一个基于轮为过程的投票进行。在每一轮中&#xff0c;每一位参议员都可以行使两项权利中的一项&#xff1a; …

电力现货市场现货需求_现货与情绪:现货铜市场中的自然语言处理与情绪评分

电力现货市场现货需求Note from Towards Data Science’s editors: While we allow independent authors to publish articles in accordance with our rules and guidelines, we do not endorse each author’s contribution. You should not rely on an author’s works with…

PHP学习系列(1)——字符串处理函数(2)

6、chunk_split() 函数把字符串分割为一连串更小的部分。本函数不改变原始字符串。 语法&#xff1a;chunk_split(string,length,end) 参数&#xff1a; string——必需。规定要分割的字符串。 length——可选。一个数字&#xff0c;定义字符串块的长度。 end——可选。字符串值…

java做主成分分析_主成分分析PCA

PCA(Principal Component Analysis)&#xff0c;即主成分分析&#xff0c;一种常用于数据降维分析的方法。要理解PCA的原理&#xff0c;首先需要理解矩阵变换的意义。矩阵变换&#xff0c;有两种意义&#xff1a;1&#xff0c;在当前坐标系下的向量&#xff0c;经过矩阵M变换后…

个人学习进度(第十六周)

转载于:https://www.cnblogs.com/lhj1017/p/7011993.html