MongoDB中常用的语句总结
本篇文章给大家带来的内容是关于MongoDB中常用的语句总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
如果觉得 Mongodb 语句不太好理解,可以和 SQL 语句进行对比,学起来要容易很多。
1. 查询(find)
查询所有结果
select * from article db.article.find()
指定返回哪些键
select title, author from article db.article.find({}, {"title": 1, "author": 1})
where条件
select * from article where title = "mongodb" db.article.find({"title": "mongodb"})
and条件
select * from article where title = "mongodb" and author = "god" db.article.find({"title": "mongodb", "author": "god"})
or条件
select * from article where title = "mongodb" or author = "god" db.article.find({"$or": [{"title": "mongodb"}, {"author": "god"}]})
比较条件
select * from article where read >= 100; db.article.find({"read": {"$gt": 100}})
> $gt(>)、$gte(>=)、$lt(<)、$lte(<=)
select * from article where read >= 100 and read <= 200 db.article.find({"read": {"$gte": 100, "lte": 200}})
in条件
select * from article where author in ("a", "b", "c") db.article.find({"author": {"$in": ["a", "b", "c"]}})
like
select * from article where title like "%mongodb%" db.article.find({"title": /mongodb/})
count
select count(*) from article db.article.count()
不等于
select * from article where author != "a" db.article.find({ "author": { "$ne": "a" }})
排序
升序:
select * from article where type = "mongodb" order by read desc db.article.find({"type": "mongodb"}).sort({"read": -1})
降序:
select * from article where type = "mongodb" order by read asc db.article.find({"type": "mongodb"}).sort({"read": 1})
2.创建(insert)
insert into article(title, author, content) values("mongodb", "tg", "haha") db.article.insert({"title": "mongodb", "author": "tg", "content": "haha"})
3.更新(update)
update()
语法:
db.collecion.update(query, update[, options] )
query : 必选,查询条件,类似find中的查询条件。 update : 必选,update的对象和一些更新的操作符(如$,$inc...)等 options:可选,一些更新配置的对象。 upsert:可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。 multi:可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。 writeConcern:可选,抛出异常的级别。
简单更新:
update article set title = "mongodb" where read > 100 db.article.update({"read": {"$gt": 100}}, {"$set": { "title": "mongodb"}})
save()
db.article.save({_id: 123, title: "mongodb"})
执行上面的语句,如果集合中已经存在一个_id为123的文档,则更新对应字段;否则插入。
注:如果更新对象不存在_id,系统会自动生成并作为新的文档插入。
更新操作符
MongoDB提供一些强大的更新操作符。
更新特定字段($set):
update game set count = 10000 where _id = 123 db.game.update({"_id": 123}, { "$set": {"count": 10000}})
删除特定字段($unset):
注:$unset指定字段的值只需是任意合法值即可。
递增或递减($inc)
db.game.update({"_id": 123}, { "$inc": {"count": 10}}) // 每次count都加10
> 注意:$inc对应的字段必须是数字,而且递增或递减的值也必须是数字。
数组追加($push):
db.game.update({"_id": 123}, { "$push": {"score": 123}})
还可以一次追加多个元素:
db.game.update({"_id": 123}, {"$push": {"score": [12,123]}})
注:追加字段必须是数组。如果数组字段不存在,则自动新增,然后追加。
一次追加多个元素($pushAll):
db.game.update({"_id": 123}, {"$pushAll": {"score": [12,123]}})
追加不重复元素($addToSet):
$addToSet类似集合Set,只有当这个值不在元素内时才增加:
db.game.update({"_id": 123}, {"$addToSet": {"score": 123}})
删除元素($pop):
db.game.update({"_id": 123}, {"$pop": {"score": 1}}) // 删除最后一个元素 db.game.update({"_id": 123}, {"$pop": {"score": -1}}) // 删除第一个元素
注:$pop每次只能删除数组中的一个元素,1表示删除最后一个,-1表示删除第一个。
删除特定元素($pull):
db.game.update({"_id": 123}, {"$pull": {"score": 123}})
上面的语句表示删除数组score内值等于123的元素。
删除多个特定元素($pullAll):
db.game.update({"_id": 123}, {"$pullAll": {score: [123,12]}})
上面的语句表示删除数组内值等于123或12的元素。
更新嵌套数组的值:
使用数组下标(从0开始):
{ address: [{place: "nanji", tel: 123}, {place: "dongbei", tel: 321}] }
db.game.update({"_id": 123}, {"$set": {"address.0.tel": 213}})
如果你不知道要更新数组哪项,我们可以使用$操作符( $表示自身,也就是按查询条件找出的数组里面的项自身,而且只会应用找到的第一条数组项):
db.game.update({"address.place": "nanji"}, {"$set": {"address.$.tel": 123}})
在上面的语句中,$就是查询条件{"address.place": "nanji"}的查询结果,也就是{place: "nanji", tel: 123},所以{"address.$.tel": 123}也就是{"address.{place: "nanji", tel: 123}.tel": 123}
4. 删除(remove)
删除所有文档:
delete from article db.article.remove()
删除指定文档:
delete from article where title = "mongodb" db.article.remove({title: "mongodb"})
Atas ialah kandungan terperinci MongoDB中常用的语句总结. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penyelesaian untuk menyelesaikan isu tamat tempoh Navicat termasuk: memperbaharui lesen dan menyahpasang semula kemas kini automatik, hubungi Navicat Premium Essentials;

Untuk menyambung ke MongoDB menggunakan Navicat, anda perlu: Pasang Navicat Buat sambungan MongoDB: a Masukkan nama sambungan, alamat hos dan port b Masukkan maklumat pengesahan (jika perlu) Tambah sijil SSL (jika perlu) Sahkan sambungan Simpan sambungan

.NET 4.0 digunakan untuk mencipta pelbagai aplikasi dan ia menyediakan pemaju aplikasi dengan ciri yang kaya termasuk: pengaturcaraan berorientasikan objek, fleksibiliti, seni bina berkuasa, penyepaduan pengkomputeran awan, pengoptimuman prestasi, perpustakaan yang luas, keselamatan, Kebolehskalaan, akses data dan mudah alih sokongan pembangunan.

Dalam seni bina tanpa pelayan, fungsi Java boleh disepadukan dengan pangkalan data untuk mengakses dan memanipulasi data dalam pangkalan data. Langkah utama termasuk: mencipta fungsi Java, mengkonfigurasi pembolehubah persekitaran, menggunakan fungsi dan menguji fungsi. Dengan mengikuti langkah ini, pembangun boleh membina aplikasi kompleks yang mengakses data yang disimpan dalam pangkalan data dengan lancar.

Artikel ini memperkenalkan cara mengkonfigurasi MongoDB pada sistem Debian untuk mencapai pengembangan automatik. Langkah -langkah utama termasuk menubuhkan set replika MongoDB dan pemantauan ruang cakera. 1. Pemasangan MongoDB Pertama, pastikan MongoDB dipasang pada sistem Debian. Pasang menggunakan arahan berikut: SudoaptDateSudoaptInstall-ImongoDB-Org 2. Mengkonfigurasi set replika replika MongoDB MongoDB Set memastikan ketersediaan dan kelebihan data yang tinggi, yang merupakan asas untuk mencapai pengembangan kapasiti automatik. Mula MongoDB Service: sudosystemctlstartmongodsudosys

Artikel ini menerangkan cara membina pangkalan data MongoDB yang sangat tersedia pada sistem Debian. Kami akan meneroka pelbagai cara untuk memastikan keselamatan data dan perkhidmatan terus beroperasi. Strategi Utama: Replicaset: Replicaset: Gunakan replika untuk mencapai redundansi data dan failover automatik. Apabila nod induk gagal, set replika secara automatik akan memilih nod induk baru untuk memastikan ketersediaan perkhidmatan yang berterusan. Sandaran dan Pemulihan Data: Secara kerap Gunakan perintah Mongodump untuk membuat sandaran pangkalan data dan merumuskan strategi pemulihan yang berkesan untuk menangani risiko kehilangan data. Pemantauan dan penggera: Menyebarkan alat pemantauan (seperti Prometheus, Grafana) untuk memantau status MongoDB dalam masa nyata, dan

Ya, Navicat boleh menyambung ke pangkalan data MongoDB. Langkah khusus termasuk: Buka Navicat dan buat sambungan baharu. Pilih jenis pangkalan data sebagai MongoDB. Masukkan alamat hos MongoDB, port dan nama pangkalan data. Masukkan nama pengguna dan kata laluan MongoDB anda (jika perlu). Klik butang "Sambung".

Tidak mustahil untuk melihat kata laluan MongoDB secara langsung melalui Navicat kerana ia disimpan sebagai nilai hash. Cara mendapatkan kata laluan yang hilang: 1. Tetapkan semula kata laluan; 2. Periksa fail konfigurasi (mungkin mengandungi nilai hash); 3. Semak Kod (boleh kata laluan Hardcode).
