假设一个集合有 N 个文档,每个文档都有一个包含 M 个子文档的数组字段。
对于在具有 M 个子文档的字段上使用
$elemMatch
是的,在 N 个文档中每个包含 M 个子文档的数组字段上使用 $elemMatch 进行查询的时间复杂度相当于搜索 𝑁×𝑀 文档。这是因为对于 N 个文档中的每一个,查询都需要评估数组中 M 个子文档中每一个的条件,从而总共产生 𝑁×𝑀 评估。