mongodb-2 基本的命令使用-增刪該查

 

0.總結:
使用數據庫testuser 結合user 來總結增刪改查的命令:
 
  1. use testuser
  2. db.getCollectionNames()
  3. db.user.insert({name:11,age:22,qq:32432})
  4. db.user.find()  
  5. db.user.findOne()
  6. find({條件},{展現的字段})  條件判斷很複雜,$gt,$lt,$ne ,$where等
  7. update({條件},{更新內容})  全局更新,局部跟新  $inc $set 的區別使用
  8. update的批量更新,第四個參數
  9. remove 就不說了,不加參數就所有刪完了,謹慎使用
1.mongo 中沒有table的概念,mongodb 是非關係型數據庫,nosql
2.mongo 中最重要的概念就是 集合  與文檔的概念,一個數據庫能夠有多個集合,一個結合能夠有多個文檔
 
3.命令  在dos窗口能夠執行,已經加入path
 mongo 進入數據庫
show dbs 默認有test和local這兩個數據庫
local     0.078GB
test      0.078GB
testuser  0.078GB
 
use testuser  使用這個數據庫,若是沒有則建立一個,不是真正的建立,不過不對數據庫進行操做是不會真正建立的
 
db 和use 的做用差很少
db 顯示目前正在使用的數據庫
 
db.getCollectionNames() 顯示全部這個數據下的集合
db.getCollectionNames()
[ "system.indexes", "user" ]
 
查詢某個集合下全部的文檔
db.集合名.find/findOne
db.user.find()
{ "_id" : ObjectId("55121bb125df1cce27228948"), "name" : "shibiao", "age" : 22 }
 
db.user.insert({name:'aa',age:33})
 
 
db.user.find({age:22},{name:1})
db.user.findOne()
find/findOne第一個參數是條件,第二參數是所要 顯示的字段
 
db.user.update({條件},{更新的值})
db.user.remove({條件})
db.user.count({條件})
 
條件判斷,
 <1>"$gt", "$gte", "$lt", "$lte", "$ne", "沒有特殊關鍵字",這些跟上面是一一對應的,舉幾個例子。
<2> "無關鍵字「, "$or", "$in","$nin" 一樣我也是舉幾個例子
<3> 在mongodb中還有一個特殊的匹配,那就是「正則表達式」,這玩意威力很強的。
<4> 有時查詢很複雜,很蛋疼,不過不要緊,mongodb給咱們祭出了大招,它就是$where,爲何這麼說
 
 
 
 
Update操做
 
總體更新和局部更新,默認就是局部更新了

    有時候咱們僅僅須要更新一個字段,而不是總體更新,那麼咱們該如何作呢?easy的問題,mongodb中已經給咱們提供了兩個html

   修改器: $inc 和 $set。正則表達式

 
 
 

<3> upsert操做,找不到就insert一條【加入的多是一個字段也有多是一個記錄】sql

     這個但是mongodb創造出來的「詞」,你們還記得update方法的第一次參數是「查詢條件」嗎?,那麼這個upsert操做就是說:若是我mongodb

沒有查到,我就在數據庫裏面新增一條,其實這樣也有好處,就是避免了我在數據庫裏面判斷是update仍是add操做,使用起來很簡單數據庫

將update的第三個參數設爲true便可nosql

 
 

<4> 批量更新post

     在mongodb中若是匹配多條,默認的狀況下只更新第一條,(這個第一條是按照大小順序來的,好比說對於3,的條件,100,99,,5,4,)那麼若是咱們有需求必須批量更新,那麼在mongodb中實現也是很簡單url

的,在update的第四個參數中設爲true便可。例子就不舉了。spa

相關文章
相關標籤/搜索