2.5 MongooDB需要注意的点以及数组内操作

mongdb 中的主键

是由生成时间 自增长的数字线程号 机器服务器号组合生成的

mongo 中操作条件

==就是在当前的数据解构中再加一层括号==

mongo 中有几种层级

  • db 库

  • collection 表

  • document 文档级别 也就是一次时候输入操作在 insert 语句括号中的整个插入对象

mongodb 事物

支持不友好,需要做两次操作的时候,要自己实现事物,mongodb 的插入原子性都是基于方法来实现的

mongodb 主键 为_id默认的

在查询字段的时候建议使用$ in 而不是$or

返回指定数组

$elemMatch$slice,以及$ 是用来指定返回==数组== 唯一 方式。不能使用数组索引来指定映射的特定数组元素; 例如:

db.users.find( { status: "A" }, { name: 1, status: 1, points: { $slice: -1 } } )
// 可以返回status 为A的 points数组中的的最后一个元素
 db.users.find( {} , "ratings.0": 1 })
 // 映射不会映射到数组的第一个元素,这样写不对。
 db.users.find( { "badges.0": "black" } )
//可以得到数组一个属性时black的

也就是说$elemMatch , $slice ,以及 $ 操作的是数组内映射关系,数组内元素关系 .

而不用这个几个操作符的时候,操作的是数组名称

Last updated

Was this helpful?