2.5 MongooDB需要注意的点以及数组内操作
mongdb 中的主键
是由生成时间
自增长的数字
和线程号 机器服务器号
组合生成的
mongo 中操作条件
==就是在当前的数据解构中再加一层括号==
mongo 中有几种层级
db 库
collection 表
document 文档级别 也就是一次时候输入操作在 insert 语句括号中的整个插入对象
mongodb 事物
支持不友好,需要做两次操作的时候,要自己实现事物,mongodb 的插入原子性都是基于方法来实现的
mongodb 主键 为_id
默认的
_id
默认的在查询字段的时候建议使用$ in
而不是$or
$ 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?