日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MongoDB_1

發布時間:2023/12/13 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MongoDB_1 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

???? 突然想去看下MongoDB的東西,于是有了這篇文章。其實很早以前就看過一些關于NoSql的文章,還記得當時里面有介紹MongoDB的,多瞅了2眼,并且在Window下安裝了MongoDB的驅動,小玩了會。今天重新翻出來,沒成想在命令行下竟然沒有能成功連接到MongoDB。一頓Baidu后發現了問題,原來是上次非正常退出MongoDB導致的問題,照貓畫虎,解決了問題:貼這里以備不時之需,

1、刪除%MONGO_HOME%/db下的.lock文件? 2、輸入命令 mongod --repair? 3、重啟mongoDB 這里只對MongoDB的使用做一些簡單記錄,環境配置什么的,請參考:MongoDB配置安裝

客戶端連接mongodb

在client的shell里,執行mongo.exe?

如何正常退出mongodb

在client的shell里,use admin,執行db.shutdownServer()即可!?

創建表

db.createCollection('zylTest')?

插入記錄

  單條記錄:

  db.zylTest.insert({"name":"zhoujy"})?

  多條記錄

  db.zylTest.insert([{"a":1,"b":2},{"a":2,"b":3},{"a":3,"b":4}])

插入記錄將按照Json結構來定義,若多條記錄的格式不相同,mongodb會自行做出處理

刪除記錄

單條刪除:db.zylTest.remove({"name":"zhoujy"})

全部刪除:db.zylTest.remove()?

更新記錄:

  $【inc】用于int類型的列加減操作

  這個部分比較麻煩:我們先來看【$inc】這個操作,【$inc】 用于int類型的key(列)加減操作,要是指定的要更新的key不存在,則會新增該key(列):以下面的操作為例:

如上圖所示在之前的結構中并不包含【pv】這一列,若第一次執行下面的操作,數據庫結構將發生響應的變化

db.zylTest.update({"name":"zhoujy"},{"$inc":{"pv":1}})

多次執行,列Pv的值將按輸入數值相加

相關命令行:

  只更新第一條出現的記錄,+1

  db. zylTest.update({"name":"a"},{"$inc":{"pv":1}})???

  更新所有符合條件的記錄,+1;(第4個參數是true)

  db. zylTest.update({"name":"a"},{"$inc":{"pv":1}},false,true)?

  要是更新條件找不到記錄,默認是不執行;要是第3個參數是true,則會新增一條記錄,包含完整的數據結構

  db. zylTest.update({"name":"a"},{"$inc":{"pv":1}},false,true)?

  總之上面的查詢相當于SQL中的

  update zylTest set pv=pv+1 where name =' zhoujy'

?

$【set】用于更新指定列

$set 用于更新指定key(列),要是指定的要更新的key不存在,則會新增該key(列):?

相關命令行:

  只更新第一條出現的記錄

  db. zylTest.update({"a":1},{"$set":{"b":"A"}})

  更新所有符合條件的記錄(第4個參數是true),若沒有符合條件的記錄則不執行任何操作,當第三個參數為true的時候,若找不到符合條件的記錄則會新增一條記錄.

  db. zylTest.update({"a ":-1},{"$set":{" b ":"A"}},false,true)?

  update zylTest set b=’A’ where a ='1?

$【unset】 用于刪除指定的列?

  刪除第一條b為2的記錄的列A

  db.zylTest.update({"b":2},{"$unset":{"a":1}})

  刪除復合條件的記錄的列A,第3個參數沒有意義

  db.zylTest.update({"b":"2"},{"$unset":{"a":1}},true,true)

  刪除所有記錄的列A

  db.zylTest.update({},{"$unset":{"a":1}},false,true)??????

 

其余更新操作暫時省略?

查詢

  返回所有記錄

  db.zylTest.find()??

?

  條件查詢

  db.zylTest.find({"a":1})

  db.zylTest.find({"a":1,"b":2})

?

  In or not in

  db.zylTest.find({"a":{"$in":[1,3,5,8]}})

  db.zylTest.find({"a":{"$nin":[1,3,5,8]}})?

?

  Or查詢

  db.zylTest.find({"$or":[{"a":1},{"b":"2"}]})

  db.zylTest.find({"$or":[{"a":{"$in":[1,2,3]}},{"b":"3"}]})?

?

  不等條件查詢:

  $lt(<);$lte(<=);$gt(>);$gte(>=);$ne(<>)

  db.zylTest.find({"a":{"$gt":1,"$lte":5}})

  db.zylTest.find({"a":{"$gt":1,"$lte":5,"$ne":3}})?

?

  限制查詢:

  db.zylTest.find({"a":{"$in":[1,3,5,8]}}).limit(1)

?

  排序:

  db.zylTest.find({"b":2}).sort({"a":-1})

?

  匹配查詢:

  這塊沒有看明白,后面再補充吧

?

?

?

轉載于:https://www.cnblogs.com/mfkaudx/p/3574004.html

總結

以上是生活随笔為你收集整理的MongoDB_1的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。