2013-09-23 99 views
0

我想通过展开一个子文档阵列聚集的文件和过滤器,其具有在阵列中没有元素的结果。有没有办法找到长度为0的子文档数组中的元素并将它们排除在聚合中?

+0

什么定义了一个空suboducment,也是它在你想确保docuemnt该字段为空或子文档的字段? – Sammaye

+0

在父文件,有一个字段,它是一个子文档阵列。我在该阵列上展开。 –

回答

1

条件是这根文档中的字段,而不是要检查是否为空,你可以做子文档:

{$match:{'$subdocument':{$gt:{}}}}, 
{$unwind:'$subdocument'} 

仅供参考,另一种方法是在这里指出:Query for documents where array size is greater than 1由@JohnnyHK

+0

它像一个魅力。谢谢。 –