MongoDB Shell 集合方法17 Mar 2025 | 5 分钟阅读 以下是用于不同场景的 MongoDB 集合方法。 #1: db.collection.aggregate(pipeline, option)aggregate 方法计算集合/表或视图中数据的总值。 Pipeline: 它是一组大规模数据操作或阶段。它接受管道作为单独的参数,而不是作为数组中的一个元素。如果管道未指定为数组,则不会指定第二个参数。 Option: 传递 aggregate 命令的文档。仅当您将管道指定为数组时才可用。 命令字段
示例 这些示例使用包含以下文档的 library 集合 计算总和 输出 ![]() 指定排序规则 #2 db.collection.bulkWrite()bulkWrite() 方法以执行顺序控制执行多个写入操作。此操作执行写入操作的数组。默认情况下,操作以特定顺序执行。 语法 输出 ![]() 操作的执行insertOne: 它只将一个文档插入到集合中。 ![]() Update one: 它只更新与集合中过滤器匹配的一个文档。 输出 ![]() Update Many: 它更新集合中所有与过滤器匹配的文档。 replaceOne: 它替换集合中与过滤器匹配的单个文档。 # 3. db.collection.count(query, option)count() 方法返回与 find 方法查询匹配的集合或视图的文档数量。 示例 我们将使用以下操作计算 javaTpoint 集合中的所有文档 现在,我们将计算 javaTpoint 集合中与查询匹配的所有文档,其中字段 tut_dt 大于 new Date ('01/01/2015') 输出 ![]() #4. Db.collection.countDocuments(query, options)countDocument() 方法返回与集合或视图的查询匹配的文档数量。它不使用元数据来返回计数。 语法 示例 以下示例将计算 javaTpoint 集合中所有文档的数量。 现在,我们将计算 javaTpoint 集合中与查询匹配的所有文档,其中字段 tut_dt 大于 new Date ('01/01/2015') #5. db.collection.estimatedDocumentCount()estimateddocumentCount() 方法计算集合或视图中的所有文档。此方法包装 count 命令。 语法 示例 以下示例将检索 javaTpoint 集合中所有文档的计数 #6. db.collection.createIndex()它可以在集合上创建索引 语法 键: 对于字段上的升序索引,我们需要指定值 1,对于降序索引,我们需要指定值 -1。 示例 下面的示例在字段 tut_Date 上创建升序索引。 以下示例显示在 tut_Date 字段和 tut_code 字段上创建的复合索引。 下面的示例将创建一个名为 category_tutorial 的索引。该示例使用指定语言环境 fr 和比较强度的排序规则创建索引。 #7. db.collection.createIndexes()createIndexes() 方法在集合上创建一个或多个索引。 语法 Keypatterns: 它是一个包含索引特定文档的数组。所有文档都具有字段-值对。对于字段上的升序索引,我们需要指定值 1,对于降序索引,我们需要指定值 -1 示例 在下面的示例中,我们考虑了一个包含类似于以下内容的文档的 employee 集合 输出 ![]() 现在,下面的示例在 products 集合上创建了两个索引
上述索引使用排序规则,该排序规则指定基本 fr 和比较强度 为 2。 #8. db.collection.dataSize()data size 方法围绕 collStats(即 db.collection.stats())命令的输出进行封装。 #9. db.collection.deleteOne()deleteOne() 方法从集合中删除一个文档。它替换与过滤器相似的第一个文档。您需要使用与唯一索引(如 id)相关的字段来进行完美的删除操作。 语法 示例 orders 集合具有以下结构的文档 以下操作删除 _id: objectId ("563237a41a4d6858 2da") 的订单 输出 ![]() 下一主题MongoDB 游标方法 |
我们请求您订阅我们的新闻通讯以获取最新更新。