2012-04-01 23 views
0

這看起來應該很簡單,但我無法使其工作。我想選擇所有文檔A,其中一個子集合中有一個或多個B元素。Mongo查詢子集合中物品的數量

就像是一個商店文件有一個僱員的集合。我只想找到有1個或更多員工的店鋪。

我想是這樣的:

{Store.Employees:{$size:{$ne:0}}} 

{Store.Employees:{$size:{$gt:0}}} 

只是不能得到它的工作。

回答

0

這不支持。你基本上只能得到其中數組大小爲的文檔等於的值。範圍搜索你不能做。

人們通常會做的事情是他們將數組長度緩存在同一個文檔的單獨字段中。然後他們索引該字段並進行非常有效的查詢。

當然,這需要你多一點工作(不要忘記保持這個長度的字段電流)。

+0

呃......太糟糕了。大聲笑希望在文檔中的某個地方被調出,或者更清楚。花了很多時間試圖弄清楚。 – user1070663 2012-04-01 06:47:54

+0

我相信這是拼寫出來:) – 2012-04-01 06:48:27