Итак, у меня есть встроенный документ, который отслеживает членство в группах. Каждый внедренный документ имеет идентификатор, указывающий на группу в другой коллекции, дату начала и дополнительную дату истечения срока действия.
Я хочу запросить для текущих членов группы. "Ток" означает, что время начала меньше текущего времени, а время истечения превышает текущее время ИЛИ null.
Этот условный запрос полностью блокирует меня. Я мог бы сделать это, выполнив два запроса и объединив результаты, но это кажется уродливым и требует загрузки во все результаты сразу. Или я мог бы по умолчанию истекать время до какой-то произвольной даты в далеком будущем, но это кажется еще более уродливым и потенциально хрупким. В SQL я бы просто выразил это с помощью "(expires >= Now()) ИЛИ (истекает IS NULL)" - но я не знаю, как это сделать в Mongo.
Любые идеи? Большое спасибо заранее.