我有幾個關于 MongoDB 集合的檔案是用無效的日期值創建的,目前它是:
"UpdateDate " : Date(-62135596800000)
我想過濾這些檔案,但我的查詢沒有回傳任何資料:
db.MyCollection.find({UpdateDate : Date(-62135596800000)})
如何過濾我的集合以檢索這些檔案?
uj5u.com熱心網友回復:
您的查詢的問題在于您需要構建一個適當的 Date 物件。這可能會有所不同,具體取決于您使用什么語言或驅動程式進行查詢,但在 JS 中只需使用即可new Date()。
db.MyCollection.find({UpdateDate : new Date(-62135596800000)})
uj5u.com熱心網友回復:
如果您無法重現需要的值,幸運的是您第一次插入檔案的日期可以從檔案 _id 中提取和更新,如下所示:
db.getCollection('MyCollection').update({ UpdateDate : new Date(-62135596800000)
},
[
{ "$set": { "UpdateDate": { $toLong: { $toDate: "$_id" }}}}
],
{ "multi" : true}
)
這是假設您尚未自定義默認 _id
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/360473.html
