个人电子商务网站建设,百度商标查询,网上国网app下载安装,浙江建设网官方网站mongodb 可视化工具#xff1a;
Robo3T。
DataGrip#xff0c;对mongodb的日期格式不友好。
MongoDB常用的语句#xff1a;
注意#xff0c;凡是涉及到日期类型的#xff0c;最好都用这种格式 ISODate(“2023-03-27T16:00:00.000Z”)
MongoDB倒序#xff0c;查询
Robo3T。
DataGrip对mongodb的日期格式不友好。
MongoDB常用的语句
注意凡是涉及到日期类型的最好都用这种格式 ISODate(“2023-03-27T16:00:00.000Z”)
MongoDB倒序查询
db.getCollection(abcde).find().sort({ createTime: -1 })MongoDB查询限制个数
db.getCollection(abcdef).find().sort({ createTime: -1 }).limit(10)MongoDB插入数据
MongoDB不需要建表直接插入数据就会建表。 日期用 ISODate() 转换。
db.getCollection(mongoDbTest).insert({userId:dxcefg, status:1, price:1.23, updateTime : ISODate(2022-02-13T07:06:25.371Z)})MongoDB查询全部
MongoDB的 Collection(集合)类似于 数据库的表。
db.getCollection(mongoDbTest).find()MongoDB条件查询
db.getCollection(mongoDbTest).find({userId:abc, status: 1})MongoDB模糊查询
//以abc开头
db.getCollection(mongoDbTest).find({userId: /^abc/})
//以abc结尾
db.getCollection(mongoDbTest).find({userId: /efg$/})
MongoDB查询数量
db.getCollection(mongoDbTest).find({userId: /^abc/}).count()mongoDB查询日期
lte 小于等于gte 大于等于
db.getCollection(mongoDbTest).find({startTime : { $lte : ISODate(2023-03-27T16:00:00.000Z) },endTime : { $gte : ISODate(2023-03-27T16:00:00.000Z) }
})MongoDB新增字段
比如新增一个字段叫 fieldTest如下
db.getCollection(mongoDbTest).update({},{$set:{ fieldTest:}})MongoDB修改字段名
//参数提示
//第一个false可选这个参数的意思是如果不存在update的记录true为插入新的记录默认是false不插入。
//第二个true可选mongodb默认是false只更新找到的第一条记录如果这个参数为true就把按条件查出来多条记录全部更新。
db.getCollection(mongoDbTest).update({}, {$rename : {orderId : status}}, false, true)
MongoDB删除字段
db.getCollection(mongoDbTest).update({fieldTest: {$exists: true}
}, {$unset: {fieldTest:null}
})MongoDB修改字段值
update第一个参数是 条件而 set部分就是修改内容 以下类似于 update mongoDbTest set status 4 where status 1;
db.getCollection(mongoDbTest).update(
{status: 1},
{$set: { status : 4 } })MongoDB删除
db.getCollection(mongoDbTest).deleteMany({ id:1 })MongoDb 判断数组非空
db.getCollection(MongoDbTest).find({ $or: [{数组字段名称: {$eq: []}},{数组字段名称: {$eq: null}}]})MongoDB添加索引/查询索引
//查索引
db.getCollection(表名).getIndexes();//加索引
db.getCollection(表名).createIndex({personList:1})//给Json的某个字段加索引
db.getCollection(表名).createIndex({personList.personId:1})
MongoDB查看执行计划
//查看执行计划
db.getCollection(表名).find({id:abcd}).explain()
//explain()得到的执行计划字段
//stage 查询方式常见的有COLLSCAN/全表扫描、IXSCAN/索引扫描、FETCH/根据索引去检索文档、SHARD_MERGE/合并分片结果、IDHACK/针对_id进行查询
//mongoDB的执行计划字段详情见 https://www.uoften.com/article/221616.html
打印mongoDB语句的日志关键词
使用 mongoTemplate 查询。
搜索关键词 find using query
SpringBoot配置mongodb打印日志。详情见https://www.cnblogs.com/expiator/p/17375443.html
参考资料
https://www.uoften.com/article/221616.html