因此,我有一个嵌入式文档来跟踪组成员身份。每个嵌入的文档都有一个指向另一个集合中的组的ID,开始日期和可选的到期日期。
我想查询组的当前成员。“当前”表示开始时间小于当前时间,到期时间大于当前时间或为空。
这个条件查询完全阻止了我。我可以通过运行两个查询并合并结果来做到这一点,但这似乎很丑陋,需要立即加载所有结果。或者,我可以将过期时间默认为将来的某个任意日期,但这似乎更丑陋,而且可能很脆弱。在SQL中,我只是用“((expires> = Now())OR(expires IS NULL)”)表示它,但是我不知道如何在Mongo中做到这一点。
有任何想法吗?首先十分感谢。