写作与程序程序员

一文了解Mongodb使用的语法

2018-10-16  本文已影响8人  胖琪的升级之路

在使用数据库之前,我们需要先了解下其基本的数据结构类型。防止我们出现类型不匹配的问题。
支持的数据类型补充的是本人在开发中经常使用的。还有更多的数据类型可以参考官方文档。

支持的数据类型如下:

Type 描述
String 字符串类型,Mongodb中使用UTF-8是合法的
Double 双精度浮点值
Boolean 布尔值
Object 用于内嵌文档
Integer 整数类型,范围根据服务器分为32和64位
Arrays 数组或者列表存储多个值存为一个键
Date 日期类型
Timestamp 时间戳
Object ID 对象ID 用于创建文档的ID

学习完数据类型之后,我们常用的数据库命令。
上篇文章中,我们学习了怎么创建数据集合,怎么查看数据集合。今天来学习下怎么增删改查来操作数据库。

操作符

比较运算符

操作符 效果
$gt 大于
$lt 小于
$gte 大于等于
$lte 小于等于
$exists 存在与否
$in 包含
$ne 不等于
$nin 不包含

逻辑运算符

操作符 效果
$exists 存在与否
$or 或者
$and 并且
$not 不存在
$mod 求模
$where 位置

特别的 $exists: true 表示字段存在
我们这些操作符在下面使用的查询,删除,更新中都会用到。操作符很方便我们去操作这些数据。当然操作符在我们的高级数据聚合操作中也起着十分重要的作用。了解这些操作符能帮助我们更方便的去学习数据

插入数据

//单条插入数据
db.test.insert({"name":"fengfeng","phone":"15612854235"})
db.test.insert({"name":"fengfeng1","phone":"15612854234"})
db.test.insert({"name":"fengfeng2","phone":"15612854233"})
db.test.insert({"name":"fengfeng3","phone":"15612854232"})
db.test.insert({"name":"fengfeng4","phone":"15612854231"})

//插入多条集合数据
db.test.insertMany([
{"name":"fengfen","phone":"15612854225"},
{"name":"fengfen1","phone":"15612854226"},
{"name":"fengfen2","phone":"15612854227"},
{"name":"fengfen3","phone":"15612854228"},
{"name":"fengfen4","phone":"15612854229"}
])
//单条记录
db.test.insertOne({"name":"fengfe","phone":"15612854235"})

查询数据

查询数据中在mongodb 不止find一种方式,我们后面会讲解一种高级操作。本篇文章讲解find操作。后面用的知识也会涉及到这些指令。

db.test.find()
//在{} 里面写入匹配条件。更多的匹配条件可以写入到{}里面。相当于mysql中的where and的关系
db.test.find({"name":"fengfen"})
//在find语句中我们还可以使用运算符操作
db.test.find({age:{'$gt':8}}) 
db.test.find().sort({age:1}) 升序排序
db.test.find().sort({age:0})降序排序 
db.test.find().limit(10) 前10个文档
db.test.find().count() 返回集合中有多少文档

删除文档

db.test.remove(条件)  //删除数据库中指定条件的集合文档。与find使用条件一样。

更新文档

在Mongodb中有两种方式来修改数据

根据update 修改

个人在使用的时候大部分使用的是该方案。

db.test.update(条件,新文档,是否新增,是否修改多条)。修改满足条件的集合,如果不存在新增。需要设置好条件
db.test.update({name:"fengfe"},{name:“wowow”,phone:"15612854632"},true,true)

使用修改器

$inc : 加上一个数字
$set:修改某一个字段。
db.test.update({name:"fengfe"},{$set:{name:'fenwowo'}})

总结

我们在简单的增删改查中基本上都会用到操作符,所以我们对操作符应该了解的比较清晰。
然后就是Mongodb中的Query条件的编写。使用一个好的Query能帮助我们很好地找到想要的结果。

上一篇下一篇

猜你喜欢

热点阅读