如何在MongoDB中创建嵌套索引?
要在MongoDB中创建嵌套索引,可以使用createIndex()或ensureIndex()。语法如下-
db.yourCollectionName.createIndex({"yourOuterFieldName.yourInnerFieldName.yourSecondInnerFieldName": 1});为了理解语法,让我们用文档创建一个集合。使用文档创建集合的查询如下-
> db.nestedIndexDemo.insertOne(
... {
...
... "CustomerId":101,
... "CustomerDetails":
... {
... "CustomerListDetails":
... {
... "CustomerName":"Larry",
... "CustomerProjectName": "Project-1",
... "CustomerCountryName":"US"
... }
... }
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8fc565d3c9d04998abf010")
}在find()method的帮助下显示集合中的所有文档。查询如下-
> db.nestedIndexDemo.find().pretty();
以下是输出-
{
"_id" : ObjectId("5c8fc565d3c9d04998abf010"),
"CustomerId" : 101,
"CustomerDetails" : {
"CustomerListDetails" : {
"CustomerName" : "Larry",
"CustomerProjectName" : "Project-1",
"CustomerCountryName" : "US"
}
}
}这是在MongoDB中创建嵌套索引的查询:
> db.nestedIndexDemo.createIndex({"CustomerDetails.CustomerListDetails.CustomerCountryName": 1});
{
"createdCollectionAutomatically" : false,
"numIndexesBefore" : 1,
"numIndexesAfter" : 2,
"ok" : 1
}这是显示索引的查询-
> db.nestedIndexDemo.getIndexes();
以下是输出-
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "test.nestedIndexDemo"
},
{
"v" : 2,
"key" : {
"CustomerDetails.CustomerListDetails.CustomerCountryName" : 1
},
"name" : "CustomerDetails.CustomerListDetails.CustomerCountryName_1",
"ns" : "test.nestedIndexDemo"
}
]热门推荐
2 圆圆的祝福语简短
6 十月简短祝福语
7 足球队祝福语简短
10 医政科祝福语简短
11 老师送的祝福语简短
12 合字的祝福语简短
13 古诗生日祝福语简短独特
14 哥哥考大学祝福语简短
15 喜事敬酒祝福语简短精辟
16 表达朋友的祝福语简短
17 冬至婆婆的祝福语简短
18 妹妹生日祝福语简短唯美