查询与文档Mongodb中的数组中的查询匹配的元素

时间:2018-08-09 07:58:20

标签: python mongodb

曾经有过类似标题的问题,但是似乎没有一个适合我的需求。

{
   '_id': '4e51b88f-b62f-4b62-81208e6011c9a388', 
   'name': 'dinky', 'phone': '91216098', 
   'blacklist': False, 
   'events': [
        {
          'startsAt': '2018-07-16T18:00:53.397', 
          'endsAt': '2018-07-16T18:10:53.397', 
          'title': 'dinky Appointment', 
          'note': ''
        }, 
        {
           'startsAt': '2018-07-30T18:00:00.000', 
           'endsAt': '2018-07-30T18:10:00.000', 
           'title': 'dinky', 
           'note': ''
        }, 
        {
           'startsAt': '2018-08-02T18:08:54.247', 
           'endsAt': '2018-08-02T18:18:54.247', 
           'title': 'dinky', 
           'note': ''
        }, 
        {
           'startsAt': '2018-08-09T18:45:09.146', 
           'endsAt': '2018-08-09T18:55:09.146', 
           'title': 'dinky', 
           'note': ''
         }
    ], 
  'additionalPhones': []
}

以上是示例文档。我想查询基于event.startsAt日期。我想要的结果是与该日期匹配的事件。

这是我尝试过的。

todaysEvent = db.find({"events": { "$elemMatch": {"startsAt": { "$regex": "2018-08-09" }}}} )

但是,当我使用此功能时,最终会得到包含当天发生的事件的文档,但它会显示该日期以外的所有其他事件。我只想显示与该日期匹配的事件。

仅供参考,我正在使用pymongo。

谢谢!

0 个答案:

没有答案