MongoDB如何为数组编制索引?
MongoDB对数组的每个值进行索引,以便你可以查询单个元素。
为了理解这个概念,我们用文档创建一个集合。创建带有文档的集合的查询如下所示 -
> db.indexingForArrayElementDemo.insertOne({"StudentFavouriteSubject":["MongoDB","MySQL"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8acdca6cea1f28b7aa0816")
}借助 find() 方法显示集合中的所有文档。查询如下所示 -
> db.indexingForArrayElementDemo.find().pretty();
以下是输出 -
{
"_id" : ObjectId("5c8acdca6cea1f28b7aa0816"),
"StudentFavouriteSubject" : [
"MongoDB",
"MySQL"
]
}以下是 MongoDB 索引数组 - 的查询
> db.indexingForArrayElementDemo.ensureIndex({"StudentFavouriteSubject":1});以下是输出 -
{
"createdCollectionAutomatically" : false,
"numIndexesBefore" : 1,
"numIndexesAfter" : 2,
"ok" : 1
}以下是单个数组元素的查询 -
> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MongoDB"}).pretty();以下是输出 -
{
"_id" : ObjectId("5c8acdca6cea1f28b7aa0816"),
"StudentFavouriteSubject" : [
"MongoDB",
"MySQL"
]
}我们再看另一个例子。查询如下所示 -
> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MySQL"}).pretty();以下是输出 -
{
"_id" : ObjectId("5c8acdca6cea1f28b7aa0816"),
"StudentFavouriteSubject" : [
"MongoDB",
"MySQL"
]
}
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP