找到 1660 篇文章 关于大数据分析

在一个 MongoDB 聚合查询中进行排序和分组?

Anvi Jain
更新于 2019年7月30日 22:30:26

672 次浏览

对于在一个查询中进行排序和分组,可以使用 $group 运算符以及聚合框架。让我们首先创建一个包含文档的集合 −> db.sortAndGroupDemo.insertOne({    Price :40,    Product: 10 }); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8f2bc78f00858fb12e907") } > db.sortAndGroupDemo.insertOne({    Price :100,    Product: 10 }); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8f2bc78f00858fb12e908") } > db.sortAndGroupDemo.insertOne({    Price :90,    Product: 20 }); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8f2bc78f00858fb12e909") } > db.sortAndGroupDemo.insertOne({    Price :200,    Product: 10 }); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8f2bc78f00858fb12e90a") } ... 阅读更多

MongoDB 查询以移除对象数组中的空对象?

Nishtha Thakur
更新于 2019年7月30日 22:30:26

752 次浏览

您可以为此使用 $pull 运算符。让我们首先创建一个包含文档的集合。在这里,我们还添加了一个空对象 −> db.removeEmptyObjectsDemo.insertOne(    {       "_id" :101,       "LoginDate" :new ISODate(),       "UserDetails" : [          {             "UserName" : "John"          },          {          },          {             "UserName" : "Sam"          }       ]    } ); { ... 阅读更多

如何在 MongoDB 中返回集合的文档而不包含 objectId?

Smita Kapse
更新于 2019年7月30日 22:30:26

2K+ 次浏览

要返回不包含 objectId 的集合文档,请设置 _id:0。让我们首先创建一个包含文档的集合 −> db.returnDocumentWithoutObjectId.insertOne({"Name":"Carol", "Age":25}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8ba6c78f00858fb12e8fa") } > db.returnDocumentWithoutObjectId.insertOne({"Name":"Sam", "Age":21}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8ba6d78f00858fb12e8fb") } > db.returnDocumentWithoutObjectId.insertOne({"Name":"John", "Age":23}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce8ba6f78f00858fb12e8fc") }下面的查询使用 find() 方法显示集合中的所有文档 −> db.returnDocumentWithoutObjectId.find();这将产生以下输出 −{ "_id" : ObjectId("5ce8ba6c78f00858fb12e8fa"), "Name" : "Carol", "Age" : 25 } { "_id" : ObjectId("5ce8ba6d78f00858fb12e8fb"), "Name" : "Sam", "Age" : ... 阅读更多

要在 SHOW dbs 列表中显示数据库,是否需要向其中添加集合?

Anvi Jain
更新于 2019年7月30日 22:30:26

72 次浏览

是的,要在列表中显示数据库,首先创建一个数据库并添加集合,否则它将不会在列表中显示。之后,使用 SHOW dbs 命令在数据库列表中显示数据库名称。以下是创建数据库的查询 −> use webcustomertracker; switched to db webcustomertracker让我们首先创建一个包含文档的集合 −> db.first_Collection.insert({"Name":"Chris"}); WriteResult({ "nInserted" : 1 })以下是使用 find() 方法显示集合中所有文档的查询 −> db.first_Collection.find();这将产生以下输出 −{ "_id" : ObjectId("5ce2760836e8b255a5eee94a"), "Name" : "Chris" }以下是 ... 阅读更多

如何在 MongoDB 中更新 _id 字段?

Nishtha Thakur
更新于 2019年7月30日 22:30:26

272 次浏览

您不能直接更新 _id 字段,即编写一些脚本来更新。让我们首先创建一个包含文档的集合 −> db.updatingIdFieldDemo.insertOne({"StudentName":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce271bb36e8b255a5eee949") }以下是使用 find() 方法显示集合中所有文档的查询 −> db.updatingIdFieldDemo.find();这将产生以下输出 −{ "_id" : ObjectId("5ce271bb36e8b255a5eee949"), "StudentName" : "Chris" }以下是更新 MongoDB 中 _id 字段的查询 −> var myDocument=db.updatingIdFieldDemo.findOne({StudentName:"Chris"}); > myDocument._id = 101; 101 > db.updatingIdFieldDemo.save(myDocument); WriteResult({ "nMatched" : 0, "nUpserted" : 1, "nModified" : 0, "_id" : 101 }) > db.updatingIdFieldDemo.remove({_id:ObjectId("5ce271bb36e8b255a5eee949")}); WriteResult({ ... 阅读更多

当 MongoDB 查找记录花费太长时间时,该怎么办?

Smita Kapse
更新于 2019年7月30日 22:30:26

80 次浏览

为了减少在 MongoDB 中查找记录的时间,您可以使用索引。以下是语法 −db.yourCollectionName.createIndex({yourFieldName:1});您可以遵循以下方法为基于数字、文本、哈希等的字段名称创建索引。第一种方法让我们创建一个索引。以下是查询 −> db.takeLessTimeToSearchDemo.createIndex({"EmployeeName":1}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }第二种方法为了理解上述概念,让我们创建另一个索引 −> db.takeLessTimeToSearchDemo1.createIndex({"EmployeeName":"text"}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }第三种方法让我们现在创建另一个索引 −> db.takeLessTimeToSearchDemo2.createIndex({"EmployeeName":"hashed"}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }

使用聚合替换值的 MongoDB 查询?

Anvi Jain
更新于 2019年7月30日 22:30:26

406 次浏览

使用聚合框架以及 $literal 运算符。让我们首先创建一个包含文档的集合 −> db.replaceValueDemo.insertOne(    {       _id : 100,       "EmployeeName" :"Chris",       "EmployeeOtherDetails": {          "EmployeeDesignation" : "HR",          "EmployeeAge":27       }    } ); { "acknowledged" : true, "insertedId" : 100 } > db.replaceValueDemo.insertOne(    {       _id : 101,       "EmployeeName" :"David",       "EmployeeOtherDetails": {          "EmployeeDesignation" : "Tester",          "EmployeeAge":26       }    } ... 阅读更多

如何使用 MongoDB 在字段中搜索字符串或数字?

Nishtha Thakur
更新于 2019年7月30日 22:30:26

850 次浏览

您可以为此使用 $in 运算符。让我们首先创建一个包含文档的集合 −> db.searchForStringOrNumberDemo.insertOne(    {       "_id": new ObjectId(),       "StudentName": "Larry",       "StudentDetails": {          "StudentMarks": {             "StudentMongoDBMarks": [44]          }       }    } ); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce2407c36e8b255a5eee944") } > db.searchForStringOrNumberDemo.insertOne( { "_id": new ObjectId(), "StudentName": "Larry", "StudentDetails": { "StudentMarks": { "StudentMongoDBMarks": ["44"] } } } ); {    "acknowledged" : true,    "insertedId" : ObjectId("5ce240f036e8b255a5eee945") }以下是 ... 阅读更多

MongoDB 查询以从数组返回特定字段?

Smita Kapse
更新于 2019年7月30日 22:30:26

610 次浏览

要返回特定字段,请使用聚合 $project。让我们首先创建一个包含文档的集合 −> db.returnSpecificFieldDemo.insertOne(    {       "StudentId":1,       "StudentDetails": [          {             "StudentName":"Larry",             "StudentAge":21,             "StudentCountryName":"US"          },          {             "StudentName":"Chris",             "StudentAge":23,             "StudentCountryName":"AUS"          }       ]    } ); {    "acknowledged" ... 阅读更多

如何在 MongoDB 中聚合数组文档?

Anvi Jain
更新于 2019年7月30日 22:30:26

157 次浏览

为此,请使用聚合框架。让我们首先创建一个包含文档的集合 −> db.aggregateArrayDemo.insertOne(    {       "_id":100,       "UserDetails": [          {             "UserName": "John",             "UserLoginYear":2010          },          {             "UserName": "Carol",             "UserLoginYear":2019          }       ]    } ); { "acknowledged" : true, "insertedId" : 100 }以下是使用find()方法显示集合中所有文档的查询 −> db.aggregateArrayDemo.find().pretty();这将产生以下输出 −{    "_id" : 100,    "UserDetails" : [       {          "UserName" : "John",          "UserLoginYear" : 2010       },       {          "UserName" : "Carol",          "UserLoginYear" : 2019       }    ] }以下是聚合数组文档的查询 −> db.aggregateArrayDemo.aggregate([    {       $match: { _id: 100 }    },    {       $project: {          Minimum: { $min: "$UserDetails.UserLoginYear" },          Maximum: { $max: "$UserDetails.UserLoginYear" }       }    } ]);这将产生以下输出 −{ "_id" : 100, "Minimum" : 2010, "Maximum" : 2019 }

广告