MongoDB基本命令总结
其實一直想整理下我常使用的MongoDB數據庫的一些操作命令,終于有時間了~
MongoDB是一種開源的,免費的非關系型數據庫(NoSql),不存在表、記錄等概念,與通常的關系型數據庫有些差異:
- MongoDB里的集合可類比成關系數據庫中的表,集合沒有固定的結構,這意味著你在對集合可以插入不同格式和類型的數據,但通常情況下我們插入集合的數據都會有一定的關聯性。集合存儲在數據庫中。
- MongoDB里的文檔可類比成關系型數據庫中表中的字段,文檔主要存儲在集合中,mongodb將數據存儲為一個文檔,數據結構由鍵值(key=>value)對組成。MongoDB 文檔類似于 JSON 對象。字段值可以包含其他文檔,數組及文檔數組。
以下是一些常用命令
一、數據庫
1、查看所有數據庫:show dbs? ? ? ? ? ??
2、切換數據庫:use??DATABASE_NAME? ? ?# 如果數據庫不存在,則創建數據庫
3、刪除數據庫:db.dropDatebase()? ? ? ? ? ? ? ??
?
二、集合
1、查看所有的集合:show collections 或者show tables? ? ? ? ?
2、創建mongotest集合:
a、? ?db.creatCollection("mongotest")? ? ? ? ? ?# 創建集合
? ? ? b、? ?db.mycollections.insert({"name":"嗯哼~"})? ? ? ? ? ? ?# 在MongoDB中,當你插入一些文檔時,MongoDB會自動創建集合
?
三、文檔
1、插入文檔:db.mycollections.insert()? 或者 db.mymycollections.save()? ? ? ? ??
#?如果不指定 _id 字段 save() 方法類似于 insert() 方法。如果指定 _id 字段,則會更新該 _id 的數據。
例:
?
?
2、查找文檔:db.mycollections.find()??
db.mycollections.find().pretty()? ? ? ?# 查找全部文檔,按格式輸出
db.mycollections.findOne()? ? ? ? ? ? ?#?findOne是按照_id正序排列,沒有查詢條件,查找第一個被插入的數據
?例:? ? ? ?
?
?其他相關查詢條件語法如下:
- 小于:語法為 {<key>:{$lt:<value>}},例 :db.mycollections.find({"age":{$lt:19}})
- 小于或等于:{<key>:{$lte:<value>}},例 :db.mycollections.find({"age":{$lte:19}})
- 大于:{<key>:{$gt:<value>}},例 :db.mycollections.find({"age":{$gt:19}})
- 大于等于:{<key>:{$gte:<value>}},例 :db.mycollections.find({"age":{$gte:19}})?
- 不等于:{<key>:{$ne:<value>}} ,例 :db.mycollections.find({"age":{$ne:18}})
?
3、更新命令:db.mycollections.update()? ? ? ? ?
例:將上面王紅年齡從18歲改為19歲,操作命令為:db.mycollections.update({"name" : "王紅"},{$set:{"age":"19"}})
4、刪除文檔:db.mycollections.remove()? ? ? ? ?? 例: 1、刪除“張三”,操作命令為:db.mycollections.remove({"name":"張三"})?? 2、插入多個姓名為“張三”的人,刪除找到的第1條“張三”,操作命令為:db.mycollections.remove({"name":"張三"},1)? ? ? #? 1,justOne參數
3、插入多個姓名為“張三”的人,刪除找到的前2條“張三”,操作命令為:
db.mycollections.remove({"_id" : {$in: [ObjectId("5b86b20c873007ee4d98c1e6"), ObjectId("5b86b20e873007ee4d98c1e7")]}})
?四、其他命令
1、查詢過濾
db.mycollections.find({"name":"張三"},{"age":1,_id:0})? ? ? ?#? 1表示顯示name,0表示不顯示_id.
2、limit()
? ? ? 如果你需要在MongoDB中讀取指定數量的數據記錄,可以使用MongoDB的Limit方法,limit()方法接受一個數字參數,該參數指定從MongoDB中讀取的記錄條數。
? ? ??db.mycollectons.find().limit(2)? ? ? ? ? # 只顯示2個文檔
3、skip()
除了可以使用limit()方法來讀取指定數量的數據外,還可以使用skip()方法來跳過指定數量的數據,skip方法同樣接受一個數字參數作為跳過的記錄條數。 db.mycollections.find({},{"name":1,_id:0}).limit(1).skip(1)? ? ?# 只顯示第二個文檔? 4、sort() MongoDB使用sort()方法對數據進行排序,sort()方法可以通過參數指定排序的字段,并使用 1 和 -1 來指定排序的方式,其中 1 為升序排列,而-1是用于降序排列。 db.mycollections.find().sort({age:1})? ? ? ? ? ? ? ? ? ? # 文檔按照age,升序排列
?
轉載于:https://www.cnblogs.com/big-orange99/p/9557698.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的MongoDB基本命令总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 打包web 项目
- 下一篇: CentOS 安装MySQL rpm方式