基于documen中嵌套元素的Pymongo查询

2024-04-18 13:39:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我在MongoDB中存储的数据如下:

{
    "payouts": {
      "entries": [
        {
          "custom_payout_overwrite": false, 
          "entry_name": "", 
          "network_custom_payout_revenue_setting_id": 0, 
          "network_offer_payout_revenue_id": 1, 
          "payout_amount": 0.44, 
          "payout_percentage": 0, 
          "payout_type": "cpa"
        }
      ], 
      "total": 1
    }
}

我只想得到付款金额大于0的数据。在

我已经试过了

^{pr2}$

但我不工作。这是因为条目是一个列表,我不知道如何在列表中进一步查询。谢谢。在


Tags: 数据nameidfalse列表mongodbcustomnetwork
1条回答
网友
1楼 · 发布于 2024-04-18 13:39:20

{cd1>你可以使用^:

filter_by = {'payouts.entries': {'$elemMatch': {'payout_amount': {'$gte': 0}}}}
data = db[collection_name].find(filter_by)

关于$elemMatch用法的文档是here。在

另请注意:要只获取payout_amount大于0的数据,应使用$gt(而不是$gte):

^{pr2}$

相关问题 更多 >