Mogondb笔记

时间:2024-09-21 16:33:32

创建数据库 use dbname

创建数据表(集合) db.createCollection("tablename")

给表添加记录 db.tablename.insert({name:'kevin',age:28})

允许隐式创建集合(表名),无需通过createCollection方法创建 db.tablename.insert({})

删除表名 db.tablename.drop() 删除数据库 db.dropDatabase()

CRUD操作

一次插入多条记录 db.collectionName.insert([{},{},{}...])

不带参数删除所有 db.collectionName.remove()

按条件删除 db.collectionName.remove({条件表达式},{选项})

选项是指{justOne:true/false} 是否只删除一行 默认为false

db.collectionName.update(查询条件表达式,新文档值) //这样写是直接将新文档整体替换为旧文档

修改某个列的值 db.collectionName.update({name:'ivan'},{$set:{name:'kevin'}})//将name等于ivan的记录改为name等于kevin,如果不设置第三个可选参数multi为true,则只更新匹配到的一行记录。

db.collectionName.update({name:'ivan'},{$set:{name:'kevin'}},{multi:true})

$unset 删除指定的列 $rename 重命名列 $inc增长某个列 $setOnInsert 配合第三个选项参数的upsert为true时使用

upsert //当更新的时候如果没有查到匹配的记录则直接插入这条记录,这种情况下插入的新纪录肯定会缺乏其他列的值,所以可以通过在第二个参数的$setOnInsert来添加其他列的值

db.collectionName.update({name:'ivan'},{$set:{name:'kevin'},$setOnInsert:{age:28}},{upsert:true})

查询

db.collectionName.find(查询表达式,查询的列)

db.collectionName.find({},{name:1})//查询集合中所有的记录,只返回name字段的数据