変数と比較したときに 2 つのフィールド間の結果が一致するドキュメントを mongo にクエリする方法を探しています。
たとえば、日付範囲が重複しています。次のスキーマを持つドキュメントがあります。
{startDate : someDate, endDate : otherDate, restrictions : {daysBefore : 5, daysAfter : 5}}
私のユーザーは、次のような独自の日付範囲を提供します
var userInfo = { from : Date, to : Date}
この条件を満たす書類が必要です:
startDate - restrictions.daysBefore <= userInfo.to && endDate + restrictions.daysAfter >= userInfo.from;
句を使用しようとしましたが、 and$where
のコンテキストが失われました。それらは where 関数のスコープ外で定義されているためです。to
from
すべての結果をプルダウンしたり、挿入時に別のフィールドを作成したりせずに、これを行いたいと思います。
このクエリを実行できる簡単な方法はありますか?