はい、 Calendar Collection を使用すると、データベース内でこれを行うことができます。 つまり、単なる日付のリストであるヘルパーコレクション 、ギャップなし。このようなカレンダーコレクションを使用すると、次のような集計をまとめることができます。
- $lookup演算子 を使用します カレンダーコレクションを日次レコードのコレクションに参加させる
- データの形状を変更します( $ unwind
を使用) 、 $ group
および
$ project 必要に応じて)結合されたデータ(サブドキュメントの配列)を目的の構造に変換します - ifnull演算子 を使用します $projectステージ numItemsフィールドがまだ存在していないドキュメントでデフォルト値0が指定されていることを確認します