mongoDB复习笔记

mongoDB复习笔记

1、mongoDB常用指令

登录:

>mongo ip地址 //默认端口号27017

注意:如果没有指定bind_ip,会导致mongodb默认绑定为127.0.0.1,导致外部无法访问

修改mongodb.conf文件:

bind_ip=0.0.0.0

退出:

>exit

查看数据库(数据库中至少有一条数据,此时的数据库才会显示出来)

>show dbs

切换数据库

>use 数据库名 //这个指令也可以直接创建数据库,但只有添加数据后,
show dbs才能看到该数据库

查看当前数据库,默认数据库:test

>db

查看所有的数据集

>show collections

删除当前数据库

>db.dropDatabase()

创建集合(相当于创建表)

>db.createCollection("user1")

删除集合

>db.collectionName.drop()

集合重命名

>db.oldCollectionName.renameCollection("newName")

新增数据

>db.collectionName.insert({"key":value,"key":value})
或
>db.collectionName.save({"key":value,"key":value})

查询所有数据

>db.collectionName.find()

条件查询-find()以非结构化的方式展示文档

>db.collectionName.find({"age":26}) //查询等值关系
>db.collectionName.find({age : {$gt : 100}}) // 大于100
>db.collectionName.find({age : {$gte : 100}}) //大于等于100
>db.collectionName.find({age : {$lt : 150}}) //小于150
>db.collectionName.find({age : {$lte : 150}}) //小于等于150
>db.collectionName.find({age : {$lt :200, $gt : 100}}) //大于100,小于200

如果你需要以易读的方式来读取数据,可以使用 pretty() 方法,语法格式如下

>db.collectionName.find().pretty()
操作格式实例sql中的类似语句
等于{:}db.collectionName.find({“by”:“java”}).pretty()where by = ‘java’
小于{:{$lt:}}db.collectionName.find({“likes”:{$lt:50}}).pretty()where likes < 50
小于或等于{:{$lte:}}db.collectionName.find({“likes”:{$lte:50}}).pretty()where likes <= 50
大于{:{$gt:}}db.collectionName.find({“likes”:{$gt:50}}).pretty()where likes > 50
大于或等于{:{$gte:}}db.collectionName.find({“likes”:{$gte:50}}).pretty()where likes >= 50
不等于{:{$ne:}}db.collectionName.find({“likes”:{$ne:50}}).pretty()where likes != 50

and 关系

MongoDB 的 find() 方法可以传入多个键(key),每个键(key)以逗号隔开,即常规 SQL 的 AND 条件

语法:

>db.collectionName.find({key1:value1, key2:value2}).pretty()

示例:

> db.collectionName.find({"by":"java", "title":"MongoDB学习"}).pretty()

or关系

MongoDB OR 条件语句使用了关键字 $or,语法格式如下:

语法:

>db.collectionName.find({$or: [ {key1: value1}, {key2:value2}]}).pretty()

示例:

>db.collectionName.remove({}) //条件删除:remove({key:value})
//删除满足条件的一条数据:remove({key:value},1)

查询一条数据

>db.collectionName.findOne();

查询指定列

> db.collectionName.find({},{name:1,age:1,sex_orientation:true})

查询指定字段的数据,并去重

> db.collectionName.distinct('sex')

对结果集排序

> db.collectionName.find().sort({salary:1}) //升序
> db.collectionName.find().sort({salary:-1}) //降序

统计记录数

> db.collectionName.find().count()

查询限定条数

>db.collectionName.find().limit(number)

使用limit()方法来读取指定数量的数据外,还可以使用skip()方法来跳过指定数量的数据,skip方法同样 接受一个数字参数作为跳过的记录条数。

>db.collectionName.find().limit(NUMBER).skip(NUMBER)

更新数据

db.collectionName.update(<query>,<update>,{upsert: <boolean>, multi: <boolean>)
参数说明:

query: update的查询条件

update : update的对象和一些更新的操作符(如 , , ,inc…)等,也可以理解为sql update查询内set后面的

upsert : 可选,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。

multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出 来多条记录全部更新。

示例:

> db.collectionName.update({name:'tom'},{$set:{age:23}},false,true)
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值