一、MongoDB支持的數據類型
- 常見類型
- String:在MongoDB中的字符串必須是有效的UTF-8
- Integer:整數可以使32或64位,取決於服務器
- Boolean:存儲布爾值(true/false)
- Double: 存儲浮點值
- Date :存儲日期
- Timestamp:時間戳,記錄文件的修改或更新
- Binary data:用於存儲二進制數據
- Null:存儲null值
- 擴展類型
- Min/Max keys:被用來對BSON元素的最低和最高值比較
- Arrays:此類型的數據或列表或多個值存儲到一個鍵
- Object:用於嵌入式的文件
- Symbol:用於字符串相同,但通常是保留給定符號類型的語言使用
- Object ID:存儲文檔的ID
- Code:存儲到文檔中的JavaScript代碼
- Regular expression:存儲正則表達式
二、數據庫
- 查看所有的庫
show dbs - 創建數據庫
use DATABASE_NAME - 列表內容
刪除庫
三、集合
- 查看集合
show collections - 創建集合
db.createCollection(name,options) - 刪除集合
db.COLLECTION_NAME.drop()
四、文檔
插入文檔
單條插入:db.COLLECTION_NAME.insert({})
批量添加:shell不支持批量添加,通過for循環實現
- insert和save
如果插入集合的”_id”值,在集合中已經存在,用insert執行插入操作會報異常,已經存在”_id”的鍵。用Save執行插入,如果系統中沒有相同的”_id”,就執行插入操作,如果有,就執行覆蓋原來的值。
刪除文檔
- 刪除所有:db.COLLECTION_NAME.remove({})
- 按條件刪除:
db.COLLECTION_NAME.remove(DELETE_CRITERIA)
查詢文檔
查詢所有:db.COLLECTION_NAME.find()
按條件查詢:db.COLLECTION_NAME.find({…})
查詢結果,篩選字段顯示:
db.COLLECTION_NAME.find({},{})
“>,>=,<,<=,!=”
“And,OR,In,NotIn”
查詢第一條
查詢排序
1:升序,-1:降序
分頁查詢
1.查詢前3條
2.查詢7條以後的數據
3.查詢5~8之間的數據
$where條件查詢
更新文檔
強硬的文檔替換式更新操作
強硬的更新會用新的文檔
insertOrUpdate操作
查詢出來的進行更新操作,查詢不出來的進行插入操作
批量更新操作
使用修改器來完成局部更新操作