我仍然对mongo查询有点谦虚,是否可能,或者 - 关于性能 - 必须将以下MongoDB查询放入更智能的表单中? $ elemMatch的双重使用会影响性能吗?
满是鸡舍的数据库示例:
{chickens: {$elemMatch: {recentlyDroppedEggs: {$elemMatch:{appearance:"red-blue-striped"}}}}}
找到所有有鸡的鸡舍(鸡的阵列),最近掉了一个红蓝条纹的鸡蛋(放入最近的鸡蛋阵列)。
感谢任何提示!
答案 0 :(得分:3)
不,你不需要$elemMatch
。你可以使用:
{'chickens.recentlyDroppedEggs.appearance': 'red-blue-striped'}}}}
$elemMatch
通常仅在您希望匹配数组元素中的多个字段或将多个运算符应用于单个字段时才需要(例如$lt
和{{1} })。