mongodb学习总结一

MongoDB是一个基于分布式文件存储的数据库。

1.拉取镜像

docker pull mongo

 2.创建容器

docker run -di --name mongo-service --restart=always -p 27017:27017 -v ~/data/mongodata:/data mongo

3.常用命令 

#查看数据库:
show  dbs;
#切换数据库
use   testdb
#创建集合
db.createCollection("集合名")
#查看集合
show  tables
show collections;
#删除集合
db.user.drop()
db.collection.drop()
#删除数据库
db.dropDatabase()

删除
db.collection.remove()  根据条件删除,删除一个可以加参数 true
db.collection.deleteOne()
db.collection.deleteMany()

#函数
ObjectId()
#新增数据
db.user.insert({name:"lisi",age:13})
db.collection.insert({name:"tom",age:28})
db.collection.insert([{name:"tom",age:28},{name:"cat",age:10}])


#统计数量
db.user.find().count()
#创建索引
db.user.createIndex({name:1},{unique:true})
#删除索引
db.user.dropIndex({name:1})
#查询所有
db.getCollection("kg_platform_document_log").find()
db.kg_platform_document_log.find()
#根据id查询
db.kg_platform_document_menu.find({"_id":ObjectId("62e22d0d8aab63467bc8bc3d")})
#指定条件
db.kg_platform_document_log.find({login_name:"superadmin"})

#指定字段显示
db.getCollection("kg_platform_document_file").find({},{"file_hash_code":true})
#去重
db.kg_platform_document_file.distinct("id")
#update 默认会使用新对象代替旧对象,默认只会修改一个
db.kg_platform_document_menu.update({"name":"tom"},{"age":12})
#multi  修改多个
db.kg_platform_document_menu.update({"_id":ObjectId("62e22d0d8aab63467bc8bc3d")},{$set:{"name":"tom"}},{multi:true})
#新增字段属性
db.kg_platform_document_menu.update({"_id":ObjectId("62e22d0d8aab63467bc8bc3d")},{$set:{"name":"tom"}})

#用来删除指定的字段属性
db.kg_platform_document_menu.update({"_id":ObjectId("62e22d0d8aab63467bc8bc3d")},{$unset:{"name":"tom"}})

findOne 用来查询集合中符合条件的第一个文档
updateMany 会修改多个


#联想搜索
Query query = Query.query(Criteria.where("associateWords").regex(".*?\\"+searchName+".*"));
this.mongoTemplate.find(query, ApAssociateWords.class);

正则匹配说明
. 表示匹配任意字符
* 表示匹配0次以上
*?表示非贪婪匹配,碰到符合条件的立马匹配

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值