Tutorial MongoD...login
Tutorial MongoDB
pengarang:php.cn  masa kemas kini:2022-04-21 17:49:03

Dokumen pertanyaan MongoDB


Syntax

Format sintaks data pertanyaan MongoDB adalah seperti berikut:

>db.COLLECTION_NAME.find()

Kaedah find() memaparkan semua dokumen dalam cara yang tidak berstruktur.

Jika anda perlu membaca data dengan cara yang mudah dibaca, anda boleh menggunakan kaedah pretty(), sintaksnya adalah seperti berikut:

>db.col.find().pretty()

Kaedah pretty() memaparkan semua dokumen dalam cara berformat .

Instance

Dalam contoh berikut kami menanyakan data dalam koleksi col:

> db.col.find().pretty()
{
        "_id" : ObjectId("56063f17ade2f21f36b03133"),
        "title" : "MongoDB 教程",
        "description" : "MongoDB 是一个 Nosql 数据库",
        "by" : "php中文网",
        "url" : "http://www.php.cn",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}

Selain kaedah find(), terdapat juga kaedah findOne() , yang hanya mengembalikan dokumen.


Perbandingan penyataan MongoDB dan RDBMS Where

Jika anda biasa dengan data SQL biasa, anda boleh memahami dengan lebih baik pertanyaan pernyataan bersyarat MongoDB melalui jadual berikut:

操作格式范例RDBMS中的类似语句
等于{<key>:<value>}db.col.find({"by":"php中文网"}).pretty()where by = 'php中文网'
小于{<key>:{$lt:<value>}}db.col.find({"likes":{$lt:50}}).pretty()where likes < 50
小于或等于{<key>:{$lte:<value>}}db.col.find({"likes":{$lte:50}}).pretty()where likes <= 50
大于{<key>:{$gt:<value>}}db.col.find({"likes":{$gt:50}}).pretty()where likes > 50
大于或等于{<key>:{$gte:<value>}}db.col.find({"likes":{$gte:50}}).pretty()where likes >= 50
不等于{<key>:{$ne:<value>}}db.col.find({"likes":{$ne:50}}).pretty()where likes != 50

MongoDB DAN syarat

Kaedah find() MongoDB boleh lulus dalam berbilang kunci (kunci), setiap kunci (kunci) dipisahkan dengan koma dan keadaan DAN SQL biasa.

Format sintaks adalah seperti berikut:

>db.col.find({key1:value1, key2:value2}).pretty()

Contoh

Contoh berikut menggunakan kekunci oleh dan tajuk untuk membuat pertanyaan Data Cina php daripada Tutorial MongoDB dalam net

> db.col.find({"by":"php中文网", "title":"MongoDB 教程"}).pretty()
{
        "_id" : ObjectId("56063f17ade2f21f36b03133"),
        "title" : "MongoDB 教程",
        "description" : "MongoDB 是一个 Nosql 数据库",
        "by" : "php中文网",
        "url" : "http://www.php.cn",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}

Contoh di atas adalah serupa dengan pernyataan WHERE: WHERE by='php中文网' DAN title='Tutorial MongoDB'


MongoDB OR condition

MongoDB OR conditional statement menggunakan kata kunci $or, dan format sintaks adalah seperti berikut :

>db.col.find(
   {
      $or: [
	     {key1: value1}, {key2:value2}
      ]
   }
).pretty()

Contoh

Dalam contoh berikut, kami menunjukkan kunci pertanyaan oleh dan nilainya ialah php tapak web Cina atau kunci tajuk dan nilainya ialah dokumen Tutorial MongoDB.

>db.col.find({$or:[{"by":"php中文网"},{"title": "MongoDB 教程"}]}).pretty()
{
        "_id" : ObjectId("56063f17ade2f21f36b03133"),
        "title" : "MongoDB 教程",
        "description" : "MongoDB 是一个 Nosql 数据库",
        "by" : "php中文网",
        "url" : "http://www.php.cn",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}
>

Penggunaan gabungan DAN dan ATAU

Contoh berikut menunjukkan penggunaan bersama DAN dan ATAU, serupa dengan pernyataan SQL konvensional: 'di mana suka>50 DAN (oleh = ' php laman web Cina' ATAU tajuk = 'Tutorial MongoDB')'

>db.col.find({"likes": {$gt:50}, $or: [{"by": "php中文网"},{"title": "MongoDB 教程"}]}).pretty()
{
        "_id" : ObjectId("56063f17ade2f21f36b03133"),
        "title" : "MongoDB 教程",
        "description" : "MongoDB 是一个 Nosql 数据库",
        "by" : "php中文网",
        "url" : "http://www.php.cn",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}

Laman web PHP Cina