mongodb是属于文档型的非关系型数据库 下图为sql术语与mongodb术语的对比:
具体安装步骤,请看这里:Windows 安装 MongoDB 4.4.0
相当于sql数据库的表操作
#创建集合 #可选参数 capped 是否为追加集合,size 集合的大小,max 最大的文档数量 db.createCollection("col1",{capped: true, size: 6142800, max: 1000}) #在一个不存在的集合插入数据也会创建 db.col2.insert({name:"zhangsan",age:18}) # 查看存在的集合 > show collections col1 col2 xxoocol #删除集合 > db.xxoocol.drop() true新增
#在col2集合中插入一个文档 db.col2.insert({name:"zhangsan",age:18}) #在col2集合中插入一个文档 db.col2.insertOne({name:"lisi",age:20}) #在col2集合中插入多个文档 db.col2.insertMany([ {name:"wangwu",age:22}, {name:"maliu",age:24} ])查询
db.col2.find() #查看col2集合中所有文档 db.col2.find().pretty() #将查询结果格式化展示 db.col2.find().limit(2) # 查看前两条数据 db.col2.find().skip(2) # 跳过前两条数据 db.col2.find().sort({age: 1}) # 按照指定字段排序,1 升序,-1 降序 # g: great 大于 l: little 小于 e: euals 等于 n: not 不等于 db.col2.find({age:20}) # 相当于 where age = 20 db.col2.find({age:{$lt:20}}) # 相当于 where age < 20 db.col2.find({age:{$lte:20}}) # 相当于 where age <= 20 db.col2.find({age:{$gt:20}}) # 相当于 where age > 20 db.col2.find({age:{$gte:20}}) # 相当于 where age >= 20 db.col2.find({age:{$ne:20}}) # 相当于 where age != 20 # 与或 db.col2.find({name: "zhangsan", age: 18}) # 相当于 where name = "zhangsan" and age =18 db.col2.find({$or: [{name: "zhangsan"}, {name: "lisi"}]}) # 相当于 where name = "zhangsan" or name = "lisi" # 支持正则表达式 db.col2.find({name: /^zhang/}) #查询name字段以"zhang"开头的文档 db.col2.find({title:/wu$/}) #查询name字段以"wu"结尾的文档 db.col2.find({title:/wu$/}) #查询name字段包含"wu"的文档 # 根据类型 db.col2.find({name: {$type: "string"}}) 或 db.col2.find({name : {$type : 2}})修改
db.col2.update({name: "zhangsan"},{$set: {name: "wangsan"}}) # 更新找到的文档,默认更新一条 db.col2.update({name: "zhangsan"},{$set: {name: "wangsan"}},{multi: true}) # 更新多条 db.col2.save({_id: ObjectId("5f4fd299ed329eb546375c10"), name: "zhaosi"}) # _id 存在则替换原有文档,若不存在则插入一条文档删除
db.col2.remove({}) #清空col2集合中的数据 db.col2.remove({name: "lisi"}) # 删除找到的文档,默认删除多条 db.col2.remove({name: "wangsan"},{justOne: true}) # 删除一条