在 MongoDB 中查詢陣列大小大於 1 的文件的查詢?
你可以使用 length 來查詢陣列大小大於 1 的文件
db.yourCollectionName.find({$where:"this.yourArrayDocumentName.length > 1"}).pretty();為了理解以上語法,讓我們建立一個帶有一些文件的集合。建立文件的集合查詢如下
>db.arrayLengthGreaterThanOne.insertOne({"StudentName":"Larry","StudentTechnicalSubje
ct":["Java","C","C++"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d6c4c0c3d5054b766a76a")
}
>db.arrayLengthGreaterThanOne.insertOne({"StudentName":"Maxwell","StudentTechnicalSu
bject":["MongoDB"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d6c660c3d5054b766a76b")
}
>db.arrayLengthGreaterThanOne.insertOne({"StudentName":"Maxwell","StudentTechnicalSu
bject":["MySQL","SQL Server","PL/SQL"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d6c800c3d5054b766a76c")
}在集合中顯示所有文件,可以使用 find() 方法。查詢如下
> db.arrayLengthGreaterThanOne.find().pretty();
輸出如下
{
"_id" : ObjectId("5c6d6c4c0c3d5054b766a76a"),
"StudentName" : "Larry",
"StudentTechnicalSubject" : [
"Java",
"C",
"C++"
]
}
{
"_id" : ObjectId("5c6d6c660c3d5054b766a76b"),
"StudentName" : "Maxwell",
"StudentTechnicalSubject" : [
"MongoDB"
]
}
{
"_id" : ObjectId("5c6d6c800c3d5054b766a76c"),
"StudentName" : "Maxwell",
"StudentTechnicalSubject" : [
"MySQL",
"SQL Server",
"PL/SQL"
]
}以下是陣列大小大於 1 的文件的查詢。下面的查詢將給出所有陣列大小大於 1 的文件
> db.arrayLengthGreaterThanOne.find({$where:"this.StudentTechnicalSubject.length > 1"}).pretty();輸出如下
{
"_id" : ObjectId("5c6d6c4c0c3d5054b766a76a"),
"StudentName" : "Larry",
"StudentTechnicalSubject" : [
"Java",
"C",
"C++"
]
}
{
"_id" : ObjectId("5c6d6c800c3d5054b766a76c"),
"StudentName" : "Maxwell",
"StudentTechnicalSubject" : [
"MySQL",
"SQL Server",
"PL/SQL"
]
}
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP