MongoDB新增及查询数据(一)
新增操作
insert函数会添加一个文档到集合里面。例如我们要登记一个人的信息,首先我们在shell力创建一个局部变量person,其记录了人的姓名和性别,我们通过db.persons.insert(person)想集合persons中插入一条记录,通过db.persons.findOne()查询刚才插入的记录。

图 7.新增操作
插入的时候需要注意一下几点:
1. 由于MongoDB是无模式的,所以不要预先定义和创建一个集合,在第一次插入的时候会自动创建。
2. 文档中可以存储任何结构的数据,当然在实际应用中我们存储的是相同类型的文档。
3. 每次插入数据的时候,如果没有”_id”字段,MongoDB会自动为文档生成此字段和值。

图 8.一个集合可以承载不同的文档
查询操作
mongoDB使用find进行查询,find的第一个参数决定了查询要返回那些文档,其形式也是一个文档,说明要执行的查询细节。空的查询文档{}会匹配集合的全部内容。find()会返回集合里的所有文档。如果需要查询获取第一条数据可以使用findOne();
图 9.使用find和findOne查询集合
使用find()返回一个游标对象,但是shell会自动遍历游标返回一个初始化的set,并允许我们继续使用一个迭代输出。不过我们也可以直接使用游标来输出。

图 10.使用it遍历查询结果
通过游标和while也可以遍历查询结果。
图 11.使用游标查看查询结果
有时我们并不需要查询集合的所有键值对,这时我们可以使用findOne或者find的第二个参数指定想要返回的键。这样既可以节省传输的流量,又能节省客户端解码文档的时间和内存消耗;

图 12.查询结果返回指定字段
查询条件中的值必须是常量,不能引用文档中其他键的值。

图 13.查询条件中不能引用其他字段作为值
mongoDB提供了比较操作符,$lt(<),$lte(<=),$gt(>),$gte(>=),$ne(!=)

图 14.查询中的比较操作符
mongoDB中有两种方式可以进行or查询,$in可以用来查询一个键等于多个值的记录,与其对应的是$nin。

图 15.查询中的or和in
MongoDB新增及查询数据(一)的更多相关文章
- MongoDB数据库中查询数据(下)
MongoDB数据库中查询数据(下) 在find中,options参数值为一个对象,用来设置查询数据时使用的选项,下面我们来对该参数值对象中可以使用的属性进行介绍: 1. fields; 该属性值为一 ...
- 在MongoDB数据库中查询数据(上)
在MongoDB数据库中查询数据(上) 在MongoDB数据库中,可以使用Collection对象的find方法从一个集合中查询多个数据文档,find方法使用方法如下所示: collection.fi ...
- python操作mongodb根据_id查询数据的实现方法
python操作mongodb根据_id查询数据的实现方法 python操作mongodb根据_id查询数据的实现方法,实例分析了Python根据pymongo不同版本操作ObjectId的技巧, ...
- mongodb基础系列——数据库查询数据返回前台JSP(二)
上篇博客论述了,数据库查询数据返回前台JSP.博客中主要使用Ajax调用来显示JSON串,来获取其中某一个字段,赋给界面中的某一个控件. 那这篇博客中,我们讲解,把后台List传递JSP展示. Lis ...
- mongodb 查询数据
MongoDB概念解析: 等同于SQL的数据库表:collectiondocument:等同于SQL的数据记录行field:等同于SQL的数据字段表连接,MongoDB不支持主键,MongoDB自动将 ...
- koa 基础(二十一)nodejs 操作mongodb数据库 --- 查询数据
1.app.js /** * nodejs 操作mongodb数据库 * 1.安装 操作mongodb * cnpm install mongodb --save * 2.引入 mongodb 下面的 ...
- PHP 从 MongoDb 中查询数据怎么样实现
一.软件环境(版本非必须) php v5.6 扩展:MongoDB nginx v1.11 mongodb v3.2 note: 必须安装MongoDB扩展 二.连接 $client = new Mo ...
- 吴裕雄--天生自然python数据清洗与数据可视化:MYSQL、MongoDB数据库连接与查询、爬取天猫连衣裙数据保存到MongoDB
本博文使用的数据库是MySQL和MongoDB数据库.安装MySQL可以参照我的这篇博文:https://www.cnblogs.com/tszr/p/12112777.html 其中操作Mysql使 ...
- Node.js向MongoDB中插入并查询数据
首先必须要保持Node.js与MongoDB保持连接 具体教程见:Node.js连接MongoDB数据库步骤 插入数据步骤如下 node项目文件如下:在routes文件夹下新建insert.js文件, ...
随机推荐
- Find Query Window的运作(手电筒)
Find Query Window的運作?(手电筒) 提示: 在點選 Toolbar的 Find鈕時,系統會觸發 Query_Find此 Trigger. 執行 App_Find.Query_Find ...
- 自己开发基于c#的垂直滚动条控件
由于Visual Studio工具箱中自带滚动条控件外观太老,而且没有颜色外观属性可设置. 所以自己就试着开发一个垂直的滚动条,它可以用来控制TextBox的滚动. 由于代码比较多,源文件已经打包到网 ...
- 使用NuGet Package Project快速制作NuGet包
今天在visual studio gallery发现了一个插件NuGet Package Project,通过它可以在Visual Studio中建立Nuget Package工程,直接生成Nuget ...
- 你还没成为Delphi QC的成员吗?(转红鱼儿)
Delphi很早就建立了quality.embarcadero.com,简称为QC,质量控制中心,用来接收用户反馈的bug,新功能建议等,是开发者与delphi官方直接交流的平台.无论是否为正版用户, ...
- php json_encode中文unicode问题
php调用json_encode将中文字符串存入mysql后读取出来有问题,发现存进去的时候把'\'给去掉了.解决方法是调用json_encode时候后面加JSON_UNESCAPED_UNICODE ...
- arpg网页游戏之地图(三)
地图分块加载类MapEngine,主要包含以下属性: g 地图层graphics,地图将画在上面 buffPixelRange 地图加载范围矩形 viewPort 屏幕视窗 currZoneArr 已 ...
- 第23章 排序算法(包括merge等)
第23章 排序算法 Sorting:1 sort Sort elements in range (function template)2 stable_sort Sort elements pr ...
- js导入外部脚本文件
JS 语言没找到导入外部脚本文件的功能,只能通知宿主程序来处理. function include(path){ var a=document.createElement("script&q ...
- 在Hadoop-2.2.0集群上安装 Hive-0.13.1 with MySQL
fesh个人实践,欢迎经验交流!本文Blog地址:http://www.cnblogs.com/fesh/p/3872872.html 软件环境 操作系统:Ubuntu14.04 JDK版本:jdk1 ...
- SAP无损耗,FP前台和回写均有2%损耗
SAP前台显示无损耗 FP前台显示有损耗 回写也有损耗 检查:从SAP取数到FP表是没有损耗 1132物料编码的主数据也是没有损耗 检查:FP_MO2SAP存储过程