[MongoDB]学习笔记--基本操作
读取
db.collection.find()
db.users.find(
{ age: {$gt: 18}},
{name: 1, address: 1}
).limit(5).sort({age:1})
users是collection名字,从users中查找;
age是query criteria,筛选结果,代表查找name字段的值比18大的;
name是projection,筛选列(1代表存在, 0代表不存在),代表返回结果中包含name,address,_id(默认包含字段)字段的值;
limit是cursor modifier,代表返回最多5条;
sort是排序,通过age的值进行排序。
注:
1. 所有的查询只能针对一个单独的collection;
2. 除非使用sort,否则查询结果没有排序;
db.collection.findOne() 是返回一个值.
db.collection.find()返回cursor类型。
插入
db.collection.insert()
db.users.insert(
{
name:"sue",
age:22,
status:"A"
}
)
注:
1. 如果insert语句中没有_id属性,mongod会自动加一个_id属性,并产生一个唯一的值,ObjectId.
2. 如果insert语句中带有_id属性,必须保证它的值是唯一的,如果重复,会返回异常.
3. update()和save()操作也可以实现插入功能.
更新
db.collection.update() or db.collection.save()
db.users.update(
{age:{$gt:18}}, --update criteria
{$set:{status: "A"}}, --update action
{multi:true} --update option
)
注:
1. 默认情况下,update方法只更新一个document,但是如果设置multi参数为true,可以更新所有符合的documents
2. save方法只能更新一个单一document
删除
db.collection.remove()
db.users.remove(
{status:"D"} --remove criteria
)
注:
1. 默认情况下,remove方法删除掉符合条件的所有documents
[MongoDB]学习笔记--基本操作的更多相关文章
- MongoDB 学习笔记(原创)
MongoDB 学习笔记 mongodb 数据库 nosql 一.数据库的基本概念及操作 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table ...
- MongoDB学习笔记系列
回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...
- PHP操作MongoDB学习笔记
<?php/*** PHP操作MongoDB学习笔记*///*************************//** 连接MongoDB数据库 **////*************** ...
- mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)
最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网: ...
- MongoDB学习笔记(转)
MongoDB学习笔记(一) MongoDB介绍及安装MongoDB学习笔记(二) 通过samus驱动实现基本数据操作MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB ...
- 【转】MongoDB学习笔记(查询)
原文地址 MongoDB学习笔记(查询) 基本查询: 构造查询数据. > db.test.findOne() { "_id" : ObjectId("4fd58ec ...
- MongoDB学习笔记(六)--复制集+sharding分片 && 总结
复制集+sharding分片 背景 主机 IP 服务及端口 Server A ...
- MongoDB学习笔记(五)--复制集 && sharding分片
主从复制 主从节点开启 主节 ...
- MongoDB学习笔记(四)--索引 && 性能优化
索引 基础索引 ...
- MongoDB学习笔记(三)--权限 && 导出导入备份恢复 && fsync和锁
权限 绑定内网I ...
随机推荐
- 基于mybatis-generator代码生成工具改(链式方法实体版)
概述 一直以来使用原生mybatis-generator的我发现有一个地方很不方便,即它生成的实体类的set方法返回值是void,而目前比较流行的则是链式set的写法,即set方法返回值不再是void ...
- Linux-查看C语言手册及man的特殊用法
man命令可以查看c语言库函数的函数原型, 比如 $ man malloc 如果显示 "No manual entry for malloc", 则需要安装 "man-p ...
- 解决在开发环境中访问json配置文件时报HTTP 错误 404.3 - Not Found
问题描述: 在做demo时,使用json文件做配置文件,访问时,http状态提示:404.3错误,经验证json确认存在,路径也没有问题, 在浏览器地址栏里直接访问json时也提示同样的错误, 根据错 ...
- STL容器分析--list
就是一双向链表,可高效地进行插入删除元素.
- SQLyog之MySQL客户端的下载、安装和使用(普通版)
本博文的主要内容有 .SQLyog的下载 .SQLyog的安装 .SQLyog的使用 前期,安装这个,不多说 MySQL Server类型之MySQL客户端工具的下载.安装和使用 1.SQLyog的下 ...
- 任务调度Cron表达式及Quartz代码详解
在线Cron表达式生成器 http://cron.qqe2.com/ cron表达式详解 http://www.cnblogs.com/linjiqin/archive/2013/07/08/3178 ...
- 多线程-CountDownLatch,CyclicBarrier,Semaphore,Exchanger,Phaser
CountDownLatch 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待.用给定的计数初始化CountDownLatch.调用countDown()计数减一, ...
- (1)Smali系列学习之Smali函数调用语句分析
一.函数调用smali中的函数和成员变量也分为两种,分别为 direct 和 virtual.两者的区别如下: 1.direct method 是指调用private方法.2.virtual meth ...
- RabbitMQ系列一
1.http://www.erlang.org/downloads 下载一个比教新的版本(otp_win64_20.2.exe) 2.http://www.rabbitmq.com/install-w ...
- c# 多线程里面创建byte数组发生内存溢出异常求解
在多线程里面读取一个400多M的Xml文件,首先将其读入FileStream里面,然后,在执行 byte [] bts = new byte[fs.Length]; 这句代码时,出现内存溢出的异常,求 ...