如何以相反的顺序将文档从一个集合添加到另一个集合?
Posted
技术标签:
【中文标题】如何以相反的顺序将文档从一个集合添加到另一个集合?【英文标题】:How to add documents from one collection to another in reverse order? 【发布时间】:2015-11-13 06:15:28 【问题描述】:对 pymongo 非常陌生。我有一个数据库“db”,其中包含一个集合“数据”,我使用一个程序从纯文本文件中填充该集合。另一个程序大约每小时运行一次,并检查日志文件中的新条目。它查看日志文件中的最后一个条目并将其转换为 mongo 文档“newdata”,然后将该文档的日期时间与“数据”中最新条目的日期时间进行比较。如果“newdata”的日期时间更大,它会将“newdata”添加到另一个集合“xdata”中。
这个循环一直运行到日期相等,此时我希望它从“xdata”中获取文档,并将它们以与“xdata”中的顺序相反的顺序添加到“data”中。我正在尝试这样做:
db.xdata.find().sort([["_id", -1]]).forEach(function(doc)
db.data.insert(doc)
)
然后我用db.xdata.remove()
清除“xdata”。
当我尝试运行它时,我得到了
SyntaxError: 无效语法
用箭头指向第一个''。
非常感谢任何帮助。
【问题讨论】:
可能是骗子:***.com/questions/8109122/… 【参考方案1】:尝试将排序上的方括号更改为花括号:
db.xdata.find().sort("_id", -1).forEach(function(doc)
db.data.insert(doc)
)
【讨论】:
我不认为这实际上是一个有效的对象,我相信python在以这种方式定义字典时需要同时定义属性及其值。以上是关于如何以相反的顺序将文档从一个集合添加到另一个集合?的主要内容,如果未能解决你的问题,请参考以下文章
Firestore - 如何在将文档添加到集合后获取文档 ID