MongoDB学习笔记

脚本交互操作

   

命令

描述

mongod --dbpath

启动数据库

mongo

连接数据库

help

显示帮助

db.help()

数据库级别的帮助

db.foo.help()

集合的帮助

db

显示当前数据库

show dbs

显示所有数据库

show collections

显示当前数据库的集合

show users

显示当前数据库的用户

use dbname

切换数据库

db.getCollection("name")

得到数据库集合

db.CONNECTION_NAME.drop()

删除名为CONNECTION_NAME的集合

  

  

db.test.find()

查询集合所有文档

db.test.findOne()

查询集合一个文档

db.test.find().limit(100)

查询前100个文档

db.test.insert({})

在集合中添加新文档

db.test.update({},{})

在集合中更新文档

db.test.remove({})

在集合中删除文档

db.test.save(doc)

同步doc文档到数据库

……

  

   

   

   

   

   

MongoDB数据类型

数据类型

描述

null

表示空值或不存在

布尔

true 或 false

32位整数

js不支持,在shell中转换为浮点数

64位整数

js不支持,在shell中转换为浮点数

64位浮点数

js支持

字符串

UTF-8

符号

js不支持,在shell中转换为字符串

对象id

文档的12字节的唯一ID

日期

从标准纪元开始的毫秒数,不存储时区

正则表达式

采用js正则表达式

代码

可以包含js代码

二进制数据

shell中无法使用

最大值

BSON包括一个特殊类型,表示可能的最大值

最小值

BSON包括一个特殊类型,表示可能的最小值

未定义

js中的undefined

数组

js中的[]

内嵌文档

js中{"s" : {"a" : "c"}}

   

   

   

   

修改器

   

   

"$set"修改器

   

  1. 插入文档

    db.test.insert({"name" : "liyongjie"})

  2. 使用修改器添加或修改

    db.test.update({"name" : "liyongjie"} , {"$set" : {"age" : 22}})         //添加age22

  3. 修改age

    db.test.update({"name" : "liyongjie"} , {"$set" : {"age":23}})           //修改age23

  4. 使用"$unset"移除age

    db.test.update({"name":"liyongjie"} , {"$unset" : {"age" : 1}})         //移除age

   

   

"$inc"修改器

   

  1. 增加数字类型的字段

    db.test.update({"name" : "liyongjie",{"$inc" : {"age" : 1}}})    //使用负数减少计数

  2. 查询时数据增加1

    db.test.find()

   

   

数组修改器

   

   

  1. "$push"

    db.test.update({"name" : "liyongjie"} , {"$push" : {"friends" : "小红"}})

       

  2. "$addToSet"

    db.test.update({"name" : "liyongjie"} , {"$addToSet" : {"friends" : "小明"}})      //添加不重复的项

    也可以使用"$ne"进行条件过滤,如下:

    db.test.update({"friends" : {"$ne":"小明"}} , {"$push":{"friends":"小明"}})

       

  3. "$each"

    db.test.update({"name":"liyongjie"} , {"$push" : {"friends" : {"$each" : ["小花", "小李"]}}})      //连续添加多项

       

  4. "$pop"

    db.test.update({"name" : "liyongjie"},{"$pop" : {"friends" : 1}})              //从末尾删除数组中的一项

       

  5. "$pull"

    db.test.update({"name" : "liyongjie"} , {"$pull" : {"friends" : "小花"}})          //删除数组中匹配的项

       

  6. 定位操作符"$"

    数组名称(如friends)点下标可以定位到数组某一项,点$可以匹配到第一项

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值