我有一条数据:在执行 db.getCollection('name').find(), 会找出一些数据例如: { "_id" : "ID_1", "time_Detail" : ISODate("2018-01-26T00:00:00.000Z"), "test1" : "1", "test2" : "2", "test3" : "3", "test4" : "4", "test5" : "5" },{ "_id" : "ID_2", "time_Detail" : ISODate("2018-01-26T00:00:00.000Z"), "test6" : "6", "test7" : "7", "test8" : "8", "test9" : "9", "test10" : "10" }
然后我想修改 ID_1 中的 time_Detail 中的 value。比如目前 find 出来的是 20180126,我想改成为 20080126。能不能不用$set 去直接给时间,可以灵活的使用-10 之类的方法去修改吗? MongoDB 小白请教大神...
1
maxCham OP 顶一下,防沉迷;跪求教
|
2
zlfzy 2018-01-26 16:21:12 +08:00
用可视化工具改 最简单
|
4
imherer 2018-01-26 16:32:02 +08:00
-10 ? 你是意思是 2018-10 = 2008 吗?
单日期来说倒是可以-10 年这种做法,但是 MongoDB 应该不行吧,只能单独 update time_Detail 这个 key 的 value 了 |
5
KLBJ 2018-01-26 16:58:06 +08:00
> var doc = ISODate("2018-01-26T00:00:00Z")
> doc.setFullYear(doc.getFullYear() - 10) 1201305600000 > doc ISODate("2008-01-26T00:00:00Z") 这种? |
6
frankkai 2018-01-26 17:04:44 +08:00
问题没时间解决,我给你推荐 2 个很好的资料:《 MongoDB 大数据权威指南》 和 https://docs.mongodb.com/manual/
我之前遇到的一些芒果 DB 的问题,基本上去查阅这本书,查不到都后面的网址的右上角搜索栏里,输入$set 最好的资料就是官方文档 |