MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

mongoengine – Abfrage auf ListField von EmbeddedDocumentField

Sie können die eingebettete Notation sowie den Abfrageoperator für „größer als oder gleich“ verwenden

Hotel.objects(chambre__prix__gte=a)

Oder wenn Sie als Ganzzahl umwandeln müssen:

Hotel.objects(chambre__prix__gte=int(math.floor(a)))

Wenn Sie nur das "übereinstimmende" Element projizieren möchten, verwenden Sie stattdessen eine Rohabfrage direkt auf dem Treiber:

Hotel._get_collection().find(
  { 'chambre.prix': { '$gte': int(math.floor(a)) } },
  { 'chambre.$': 1 }
)