想象電影的集合(存儲在MongoDB的集合),每一個看起來像這樣:
{
_id: 123456,
name: 'Blade Runner',
buyers: [1123, 1237, 1093, 2910]
}
我想電影列表,每一個與表明買方2910(例如)是否購買了它。
任何想法?
我知道我可以將[1123,1237,1093,2910]更改爲[{id:1123},{id:1237},{id:1093},{id:2910}],以允許使用$ elemMatch在投影中,但寧願不要觸摸結構。我也知道我也許可以使用$ unwind操作符(在聚合框架內),但在買家有數千個值(基本上每個文檔在匹配前將內容分解爲數千個拷貝)的情況下,這似乎非常浪費。
還有其他想法嗎?我在這裏錯過了很簡單的東西嗎?