gpt4 book ai didi

Mongodb Skip() 和 limit()

转载 作者:行者123 更新时间:2023-12-02 01:54:40 25 4
gpt4 key购买 nike

我正在对包含大量记录的 mongo 集合执行更新查询。所以我使用 skip()limit() 函数。例如:在第一个文件中,我正在处理前 50000 条记录。

cur1= db.collection_name.find(no_cursor_timeout=True).skip(0).limit(50000)

在发送文件中,我正在访问接下来的 50000 条记录

cur2=db.collection_name.find(no_cursor_timeout=True).skip(50000).limit(50000)

我在不同的文件中对这两个游标执行各种更新查询。现在我想知道这些更新的记录如何添加回集合中? cur2 会获取 cur1 查询中更新的记录吗?

最佳答案

有可能。无法保证您会以相同的顺序获得记录。每当插入或更新文档时,文档在集合中的存储顺序也会发生变化。而且这个顺序是相当随机的。

尝试使用 Robomongo,看看 MongoDB 的这种特性如何发挥作用。每当您尝试获取文档时,在对学院进行每次更新或插入操作后,记录的顺序都会发生变化。

在这种情况下,我建议对唯一且单调递增的字段上的记录进行排序。这样您就可以确保在第二个光标中获得未经编辑的记录。

希望这有帮助。

关于Mongodb Skip() 和 limit(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35554399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com