操作符
操作符 | 解义 |
---|
$gt | > |
$lt | < |
$gte | >= |
$lte | <= |
$ne | != |
$in | in 包含 |
$nin | not in 不包含 |
$exists | exist 是否存在 |
$inc | 给一个书记field 增加 value值 |
$set | 相当于 set filed = value |
$unset | 删除字段 |
$push | 把value追加到field中若field不存在,会新增一个数组类型 |
$pushAll | 同上,一次可以追加多个 |
$addToSet | 增加一个数组,且只有当这个值不在数组时添加 |
$pop | {$pop:{field:1}} 删除最后一个值{$pop:{field:-1}} 删除第一个值 |
$pull | 从数组中删除一个等于value的值 |
$pullAll | 同上,可以一次删除数组内的多个值 |
操作
db.tablename->insert({'field1'=>'value1','field2'=>'value2'});
db.collection.update(<query>,<update>, upsert:<boolean>, multi:<boolean>
);
参数 | 类型 | 描述 |
---|
query | document | 要修改哪些的查询条件,类似于SQL where |
update | document | 要修改的字段对应的值 |
upsert | boolean | 可选的,默认值是false。如果根据查询条件没找到对应的文档,如果设置为true,相当于执行insert,如果设置为false,不做任何的操作。 |
multi | boolean | 可选的,默认值是false。如果根据查询条件找到对应的多条记录是,如果设置为false时,只修改第一条,如果设置为true,全部更新 |
2.对单个字段进行修改
名称 | 描述 |
---|
$inc | 根据要添加的值递增该字段的值。 |
$mul | 将该字段的值乘以指定的值 |
$rename | 重命名字段 |
$setOnInsert | 操作时,操作给相应的字段赋值 |
$set | 用来指定一个键的值,如果不存在则创建它 |
$unset | 用来指定一个键的值,如果不存在不创建创建它 |
$min | 只有当指定的值小于现有字段值时才更新该字段。 |
$max | 只有当指定的值大于现有字段值时才更新该字段。 |
$currentDate | 设置当前日期字段的值,或者作为一个日期或时间戳。 |