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