5

I would like to pop one item from the array, and get that element.

Is it possible in mongodb?

I didn't find such information at

http://docs.mongodb.org/manual/reference/operator/pop/

4

2 回答 2

3

这是不可能的。MongoDB 不会返回您以前使用正常更新获得的文档的任何部分,也就是说它可以返回完整的文档,而不仅仅是findAndModifyhttp://docs.mongodb.org/manual/reference/command/上的弹出元素) findAndModify/ ),然后您可以过滤掉该元素,无论是第一个还是最后一个。

注意:我应该警告 findAndModify 基本上就像选择查询中的每个文档并对其进行操作,这就是它能够返回它的方式,因此您可能会看到跨越大量查询的一些性能损失。

于 2012-12-13T08:18:52.653 回答
2

MongoDB 操作返回完整文档

选项可能是:

  • 使用findAndModify命令,通过处理返回的文档得到数组程序端的弹出值。(1 个查询)
  • 使用find获取文档,获取要在程序端弹出的值,然后发送更新。(2 个查询)
于 2012-12-13T08:18:03.947 回答