mongodb刪除資料的命令比較簡單,也沒有太多的變化
語法:db.collection.remove(query ,justone)
引數:query與下文查詢操作的query相同,justone表示只是刪除匹配到的多條文件中的第一條文件
query的使用
因為鍵值對無法進行像mysql中where子句那樣強大的篩選作用(鍵值對篩選相當於mysql中where子句篩選的等於條件),mongodb引入了操作符操作符的表達形式是以鍵值對形式出現的。下面介紹幾種常用的操作符,更多的操作符可以檢視mongodb的官方文件。
1)比較操作符
$eq 等於操作符
例如:db.class.find( }, )
$gt 大於操作符
$lt 大於操作符
$lte 小於等於操作符
$gte 大於等於操作符
$ne 不等於操作符
細節:mongodb中多種型別的資料都是可以比較的,例如數值型別,字串型別
2)範圍操作符
$ in [ ] 在範圍集合內的文件被匹配 (連續的範圍)
例如:db.class.find( }, )
如果是用 $ and只能這樣表達: $and:[ }, } ]
用gt和lt一起用來把範圍括起來
$ nin[ ] 不在範圍集合內的文件被匹配
3)邏輯操作符
$ and: [ ] 和運算子
query 中如果多個條件用逗號隔開,就為and關係(類似mysql中的where子句中的and)
例如:db.class.find( ], ) 查詢年齡大於17,小於22的同學
用$ and 可以改寫為 db.class.find( , ] }, )
[ ]內一定要分成連個字典來表示兩個條件,否則(只用乙個字典來包含兩個條件並用逗號分隔)
在語法上就只表示乙個條件,只不過這個條件裡面包含兩個條件而已
一般平常使用多直接用逗號來分隔條件而不用 $and的操作符
$ or 或運算子
語法表達上跟 $ and 一樣,表達的是或邏輯篩選
$not 取反運算子
db.class.find( } }, ) 匹配年齡小於等於17的文件
注意: $not 一般新增在條件值的前面,對值進行取反
$ nor 既不也不運算子
not(a or b) --> not a and not b
db.class.find( , ] }, )
注意:如果篩選匹配的文件的域是其他文件不具備的;即乙個域有些文件有值,有些文件沒值,這種篩選是無法匹配的
語法:db.collection.update(query,update,upsert,multi)
與mysql不同,mongodb所有修改操作都用update,包括對集合的域值的修改和集合結構的修改
引數:
query 篩選要修改的文件,相當於where
update 將篩選的文件修改為什麼內容,相當於set,需要配合修改操作符一起使用
upsert 布林值,預設為false,query文件不存在則不修改,如果為true,文件不存在,則根據query和update插入新文件
multi 布林值,預設為false如果query篩選的為多條,則只修改第一條,如果設定為true,則修改所有符合條件文件
注意:upset 一般為用預設值false,因為如果原本沒匹配的文件,很有可能是程式設計師自己輸錯了某些內容
修改操作符:
$ set
如果沒有該文件,需要插入的時候是根據查詢條件和設定條件作為域來插入的
如果需要修改的值為多個,就像插入資料一樣,將不同域的值用乙個包起來
例如:db.class.update(,},true)
語法:db.collection.skip(number).limit(number2).sort()
相當於mysql裡的limit(number,number2) by 條件,即 先按照sort條件排序完成 ,在跳過第number-1條,從第number條開始返回,只返回number2條,
重點 :
sort + skip + limit 是有執行優先順序的 他們的界別分別是:
優先 sort 其次 skip 最後 limt,即不管skip位置在**都是先排序
skip + limit 的優先順序 也是先 skip 再 limit
語法:db.collectionname.count({})
大括號裡可以放篩選條件query
語法:db.collectionname.aggregate(}})
mongodb 常用命令
以下為基本的常用操作命令 對資料庫操作 檢視所有資料庫 show dbs 刪除當前資料庫 db.dropdatabase 使用資料庫 use 為資料庫名 對collection操作 即sql中的表名 檢視所有collection show collections 檢視collection元素個數 d...
MongoDB常用命令
切換 建立資料庫use yourdb 查詢所有資料庫show dbs 刪除當前使用資料庫db.dropdatabase 從指定主機上轉殖資料庫db.clonedatabase 127.0.0.1 從指定的機器複製資料庫資料到某個資料庫db.copydatabase mydb temp 127.0.0...
mongoDB常用命令
列出collection show.collections 檢視collection中所有資料 db.collection名稱.find 啟動mongo並設定資料儲存路徑 mongod dbpath 路徑 進入mongo執行介面 mongo預設是沒有使用者和密碼的 mongo 排序 gui工具是不能...