así que sé que puedo hacer esto con una operación agregada, pero no estoy seguro de si me estoy perdiendo algo, ya que parece que no puedo hacerlo con una simple llamada de find . Por ejemplo, probé:
{'CreationTime': { '$dayOfMonth': 26 }} Pero eso falló con: unknown operator: $dayOfMonth .
Creo que puedo lograr esto con una consulta $in pero se siente feo tener que generar todas las fechas posibles.
¿Es esto posible con una consulta de find regular?
Respuesta corta: No, no lo es.
find() solo admite (a partir de v5) un pequeño subconjunto de funciones que se pueden aplicar a los campos en comparación con aggregate() . Desde hace unos años, aggregate es el nuevo find . En casi todas las condiciones, no hay beneficio de rendimiento al usar find , pero para expresiones simples es claramente más compacto y conveniente.
Y a partir de v4.4, muchas expresiones de update complicadas se manejan más fácilmente a través de aggregate con la etapa de merge configurada en la misma colección que la entrada.