首先,感谢cnblogs TV,感谢博主的TV,更感谢对上期分享支持的朋友们。在你们的支持,才有了让我写下这一期的动力。夜晚也许你在电视机边看电视,也许你在网上看电影。而我在坚守了一天的电脑之后,继续坐到了电脑边,听着北京广播网的87.6,写着技术分享。好了重点来了,也是very important.接着说我们的mongodb吧

mongodb也能做mysql、sqlserver能做的几乎所有功能。

一、操作符

操作符相信大家肯定都知道了,就是等于、大于、小于、不等于、大于等于、小于等于,但是在mongodb里不能直接使用这些操作符。在mongodb里的操作符是这样表示的:

(1) $gt    > (大于)   

(2) $lt  < (小于)   

(3) $gte  >= (大于等于)

(4) $lt  <= (小于等于)  

(5) $ne  != (不等于) 

(6) $in  in (包含)      

(7) $nin  not in (不包含)  

(8) $exists  exist (字段是否存在) 

(9) $inc  对一个数字字段field增加value

(10) $set  就是相当于sql的set field = value

(11) $unset  就是删除字段  

(12) $push  把value追加到field里面去,field一定要是数组类型才行,如果field不存在,会新增一个数组类型加进去

(13) $pushAll  同$push,只是一次可以追加多个值到一个数组字段内

(14) $addToSet  增加一个值到数组内,而且只有当这个值不在数组内才增加。

(15) $pop  删除最后一个值:{ $pop : { field : 1 } }删除第一个值:{ $pop : { field : -1 } }注意,只能删除一个值,也就是说只能用1或-1,而不能用2或-2来删除两条。mongodb 1.1及以后的版本才可以用

(16) $pull  从数组field内删除一个等于value值

(17) $pullAll  同$pull,可以一次删除数组内的多个值

(18) $ 操作符  是他自己的意思,代表按条件找出的数组里面某项他自己。这个比较坳口,就不说了。

二、CURD 增、改、读、删

增加

db.collection->insert({'name' => 'caleng', 'email' => 'admin#admin.com'});

是不是灰常简单呀,对就是这么简单,它没有字段的限制,你可以随意起名,并插入数据

修改

db.collection.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } ); 只更新了第一条大于1记录
db.collection.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true ); 大于3的记录 全更新了
db.collection.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false );  大于4的记录 只加进去了第一条
db.collection.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true ); 大于5的记录 全加进去

查询

db.collection.find(array('name' => 'bailing'), array('email'=>'email@qq.com'))
db.collection.findOne(array('name' => 'bailing'), array('email''email@qq.com'))

大家可以看到查询我用了两种不同的写法,这是为什么,其实这跟做菜是一样的,放不同的调料,炒出的菜是不同的味道。下面给大家说一下,这两种调料的不同作用。

findOne()只返回一个文档对象,find()返回一个集合列表。

也就是说比如,我们只想查某一条特定数据的详细信息的话,我们就可以用findOne();

如果想查询某一组信息,比如说一个新闻列表的时候,我们就可以作用find();

那么我想大家这时一定会想到我想对这一个列表排序呢,no problem mongodb会为您全心全意服务

db.collection.find().sort({age:1}); //按照age正序排列
db.collection.find().sort({age:-1}); //按照age倒序排列
db.collection.count();   //得到数据总数
db.collection.limit(1);   //取数据的开始位置
db.collection.skip(10);  //取数据的结束位置
//这样我们就实现了一个取10条数据,并排序的操作。

删除

删除有两个操作 remove()和drop()

db.collection.remove({"name",'jerry'}) //删除特定数据
db.collection.drop() //删除集合内的所有数据

distinct操作

db.user.distinct('name', {'age': {$lt : 20}})

噢!一口气写太多了,大家看太多也不易消化。今天就到这里吧,明天接着写php对mongodb的操作,尽请期待哦!不能再写了,不然的话明天会变熊猫。good night. have a good dream.

五笔者:sarah

转载于:https://www.cnblogs.com/mbailing/archive/2012/11/09/2763379.html

Mongodb之(初出茅庐)相关推荐

  1. windows安装MongoDB环境以及在pycharm中配置可视化插件

    安装MongoDB数据库 参考这里 安装PyMongo python3 -m pip3 install pymongo指定版本 python3 -m pip3 install pymongo==3.5 ...

  2. SQL与NoSQL的区别 以MySQL与MongoDB为例

    异同对比 1.语言和结构层面 SQL数据库,是基于表的,并且用结构化语言也就是SQL来定义和操纵数据.一方面,这是非常强大的:SQL是最通用和最广泛使用的选项之一,使其成为一个安全的选择,尤其适用于复 ...

  3. php配置mongodb扩展、安装mongodb服务教程

    安装mongodb服务. 1.下载mongodb: mongodb 提供了可用于 32 位和 64 位系统的,你可以从mongodb官网下载安装. mongodb下载地址:https://www.mo ...

  4. MongoDB之conf配置文件详解

    详细看一下mongodb配置文件. mongodb.conf # mongodb.conf# 数据库文件位置 dbpath=/var/lib/mongodb#日志文件的路径 logpath=/var/ ...

  5. CentOS7.4 安装mongodb

    温馨提示:我的环境是腾讯云自带的CentOS7.4 x64 镜像,本地环境是win10 x64 专业版,ssh工具是用的win10 自带的cmd, 远程工具版本是Robo 3T 1.2.1 . 如果环 ...

  6. Centos7下安装MongoDB

    简介 MongoDB 是一个基于分布式 文件存储的NoSQL数据库 由C++语言编写,运行稳定,性能高 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案 查看官方网站 MongoDB特点 模式自 ...

  7. php mongodb execute,php简单操作mongodb

    您现在的位置是:网站首页>>PHP>>php php简单操作mongodb 发布时间:2019-09-29 16:34:25作者:wangjian浏览量:525点赞量:0 一: ...

  8. 【MongoDB异常】Exception authenticating MongoCredential解决方法

    我们通过ideal编辑器编辑 springboot时候,出现这个错误: com.mongodb.MongoSecurityException: Exception authenticating Mon ...

  9. mongodb插入数据获取本次插入的mongodb id

    最近接了一个别人的项目做二次开发,使用php进行mongodb的数据操作时,需要插入数据后得到相应的mongodb 中的id,简单代码如下 $data = array('test' => 'aa ...

最新文章

  1. Adam那么棒,为什么还对SGD念念不忘 (2)—— Adam的两宗罪
  2. oracle数据库 gbk,oracle 数据库编码转换(转GBK) | 学步园
  3. 二进制(bit)整数
  4. Eclipse android
  5. Java 8 新增lambda表达式(-)
  6. SpringBoot | 第三十二章:事件的发布和监听
  7. applicationstatewinec7 电源管理
  8. 系统设计(二)——TinyURL系统设计
  9. 一文理解 pytorch 拟合网络的过程
  10. Perl语言学习总结
  11. [渝粤教育] 中国地质大学 管理信息系统 复习题 (2)
  12. 零基础CSS入门教程(26)–CSS按钮实例
  13. python进阶之学习笔记_Python进阶学习笔记
  14. 解决电脑低俗弹窗广告
  15. 设计模式:设计模式经典总结
  16. 【python】pythonPTA编程练习2
  17. 对角矩阵、对称矩阵、单位向量、正交矩阵
  18. 联想全系列官方WIN10工具
  19. 估值报告写作第二讲——第五届CVA估值建模精英计划
  20. 网页中这 10 种字体的运用方式,不会让人觉得 Low

热门文章

  1. Python数据采集案例(1):微博热搜榜采集
  2. 爬虫是后端吗_前端有架构吗?
  3. UA OPTI570 量子力学28 原子结构的量子力学基础
  4. 中学计算机竞赛教程,全国中小学信息技术课程教学大赛获奖案例初中信息技术八年级-设置自定义动画动作路径...
  5. 热乎的滴滴前端面经「现在实习生面试也不简单呀」
  6. Cisco Viptela SD-WAN 基本部署
  7. 正则表达式 (js)
  8. Power BI-销售业绩分析展示
  9. 微服务架构—优雅停机方案
  10. Element 官方宣布了:Element UI for Vue 3.0 来了!