Node/Express/MongoDB/Mongoskin を使用してアプリを構築しています。
私はデータベースに「クライアント」という名前のコレクションを持っています。ここには、クライアントアカウントに関する情報を含むドキュメントがあります。各クライアント ドキュメントには、次のような送り状オブジェクトを含む配列が含まれています。
doc.invoices = [
{year: 2012,
quarter: 1,
daily: 912.00,
sms: 42.00,
paid: true},
{year: 2012,
quarter: 2,
daily: 913.00,
sms: 55.00,
paid: true},
{year: 2012,
quarter: 3,
daily: 876.00,
sms: 82.00,
paid: true},
{year: 2012,
quarter: 4,
daily: 903.00,
sms: 93.00,
paid: false},
{year: 2013,
quarter: 1,
daily: 915.00,
sms: 67.00,
paid: true},
{year: 2013,
quarter: 2,
daily: 920.00,
sms: 35.00,
paid: true},
{year: 2013,
quarter: 3,
daily: 880.00,
sms: 92.00,
paid: true},
{year: 2013,
quarter: 4,
daily: 900.00,
sms: 85.00,
paid: false}
]
質問:すべてのクライアントを表示するスーパー管理者ビューのように、このコレクションからすべてのドキュメントを照会したいが、invoice-array から返される情報を「年」が特定の値に等しいオブジェクトに制限したいとします。たとえば、2013 年は現在の年です。
必要なのはプロジェクションだと思いますが、問題は、プロジェクションが最初に見つけた結果しか返さないことです...