MongoEngine:嵌入式文档列表字段中的按字段查询订单

时间:2020-06-14 18:59:30

标签: python python-3.x mongodb mongoengine

我需要通过嵌入式文档列表中的字段对MongoEngine查询(由Python 3进行排序)进行排序。这是一个示例交易文档:

{
     "To": "Bob",
     "From": "Sally",
     "Amount": 100.00,
     "Fees": [
          {
               "To": "Joe",
               "Amount": 1.00
          },
          {
               "To": "Mike",
               "Amount": 1.50
          }
     ]
}

我想根据“ Joe”的最高费用为所有交易订购查询。在sudo SQL中,将是这样的:

SELECT * FROM transactions ORDER BY Fees.Amount WHERE Fee.To == "Joe"

MongoEngine文档提供了以下语法:

Transaction.objects().order_by('-Amount')

但是这里不需要什么特异性。我认为应该是这样的:

Transaction.objects.order_by('-Fees.Amount')

但这并不专门针对Fees到“ Joe”进行过滤,而且我不确定它将如何处理顶级文档(EmbeddedDocumentListField)而不是单个EmbeddedDocument中的“ Fees”。

任何建议都值得赞赏!

0 个答案:

没有答案
相关问题