nosql ------>mongodb

?nosql 數(shù)據(jù)庫(kù)? 是非關(guān)系型數(shù)據(jù)庫(kù)? (not only sql)(BSON == JSON == dict)

常用的 有 mongodb、redis這2種

什么是nosql數(shù)據(jù)庫(kù):

????? 數(shù)據(jù)庫(kù):進(jìn)行高效的陵刹、有規(guī)則的進(jìn)行數(shù)據(jù)持久化存儲(chǔ)的軟件

????? NoSQL數(shù)據(jù)庫(kù):Not only sql,指代非關(guān)系型數(shù)據(jù)庫(kù)

????? 優(yōu)點(diǎn):高可擴(kuò)展性鄙麦、分布式計(jì)算痘儡、低成本、靈活架構(gòu)蚓让、半結(jié)構(gòu)化數(shù)據(jù)萌腿、簡(jiǎn)化關(guān)聯(lián)關(guān)系?

?? ?? 缺點(diǎn):沒有標(biāo)準(zhǔn)化限匣、有限查詢、不直觀

常見[NoSQL]數(shù)據(jù)庫(kù) BSON==json

????????? 列存儲(chǔ):Hbase毁菱、Cassandra米死、Hypertable

????????? 文檔存儲(chǔ):MongoDB、CouchDB

??????? ? k-v存儲(chǔ):TokyoCabinet贮庞、BerkeleyDB峦筒、Memcache、redis

??????? ? 對(duì)象(圖)存儲(chǔ):Neo4J窗慎、Versant

????????? Xml數(shù)據(jù)庫(kù):BerkeleyDB物喷、BaseX

mongodb:(開源的 可以從官方網(wǎng)站下載 偶數(shù)是穩(wěn)定版 奇數(shù)是開發(fā)板)

1、安裝

? 在window下使用壓縮包安裝 :

? ? ? 1遮斥、解壓文件到某個(gè)盤符(路徑不能包含特殊字符和中文)

????? 2峦失、配置bin到環(huán)境變量中的path

????? 3、在主目錄新建data文件夾术吗、在 data文件夾 下新建 db文件夾 和log文件夾? 在 log文件夾中新建log.log文件

????? 4尉辑、以管理員身份打開cmd

??????????????????????????? 輸入指令 mongodb --dbpath db文件路徑? 配置db

?????????????????????????? 輸入指令mongodb --dbpath db文件夾路徑? --logpath log.log文件路徑? --install ? ? 配置服務(wù) (注冊(cè)成服務(wù)) ? ? ? ??

?????? 5、開啟mongodb服務(wù)使用mongodb數(shù)據(jù)庫(kù)

?? 在linux下安裝:

???????? 1较屿、sudo apt install mongodb 第一種方法

????????? 2隧魄、第二種方法通過壓縮包安裝? tar? -zxvf 壓縮文件名

????????????? 未完 待補(bǔ)充需要配置path


mongodb概述:

????? 是基于分布式文件存儲(chǔ) 的nosql 數(shù)據(jù)庫(kù)? 由c++編寫

優(yōu)點(diǎn): 模式自由?? 面向集合?? 完整索引支持??? 復(fù)制和高可用性


mongodb 術(shù)語(yǔ)解釋

sql?? --------> nosql

DBMS? ---- >DBMS :數(shù)據(jù)庫(kù)管理系統(tǒng)

database ----> database 數(shù)據(jù)庫(kù)

table ----------> collection 數(shù)據(jù)庫(kù)? 表------>集合

row ------------>? document 數(shù)據(jù) 記錄 ------> 文檔

column --------->? field?? 數(shù)據(jù) 字段-------->? 域

index -------> index? 索引

table -join ------------> None? 表連接

primary key ----------> primary key? 主鍵


mongodb 基本操作 (mongodb將數(shù)據(jù)存儲(chǔ)為一個(gè)文檔 數(shù)據(jù)由鍵值對(duì)的形式組成? 組成三元素 數(shù)據(jù)庫(kù)--->集合----->文檔(域))

?? 數(shù)據(jù)庫(kù)結(jié)構(gòu)的一些操作:

首先打開cmd 輸入mongo 打開mongodb服務(wù)

mongodb的簡(jiǎn)單使用

show dbs

use dbName

db\db.getName()

db.help()

db.createCollection("name")

db.cname.insert({}); ? ?db.cname([{},{},{}.........])插入多條數(shù)據(jù)

db.dropDatabase();

db.cname.drop()

show dbs? 查看當(dāng)前數(shù)據(jù)庫(kù)

db 查看當(dāng)前在那個(gè)數(shù)據(jù)庫(kù)

use db_py1712 切換到db_py1712數(shù)據(jù)庫(kù)

show collections顯示當(dāng)前數(shù)據(jù)庫(kù)下所有的集合

db.createCollection('stu') ?創(chuàng)建一個(gè)數(shù)據(jù)集合



show dbs

use users

show collections

db.user.find({age:{$lt:30}})

db.user.find().pretty()


db.user.find({age:30}).pretty() ====== db.user.find({age:{$eq:18}}).pretty()


db.user.insert({name:'xiaoming',age:20}) ? 插入一條數(shù)據(jù)

db.user.insert({name:'xiaoming',age:30})

db.user.find({age:{$eq:30},name:'xiaoming'})

db.user.find({$and:[{age:{$eq:30}},{name:{$eq:'xiaoming'}}]})

db.user.find({$or:[{age:18},{name: 'ls'}]})

db.user.find({age:{$in:[18,20]}})

db.user.find({age:{$nin:[18,20]}})

db.user.find().limit(3) ? 分頁(yè)顯示实幕,一頁(yè)顯示3行

db.user.find().limit().count() 統(tǒng)計(jì)所有記錄數(shù)

db.user.find({age:30}).limit().count() ?統(tǒng)計(jì)年齡等于30的記錄數(shù)


sql和nosql對(duì)比

更新db.stu.update({title: 'python01'},{$set:{title: 'mongo'}})

原表格


db.stu.update({age: {$gt:30}},{$set:{age: 30}})

刪除文檔 db.stu.remove({name: '老王'})


MongoDB AND 條件

MongoDB 的 find() 方法可以傳入多個(gè)鍵(key),每個(gè)鍵(key)以逗號(hào)隔開堤器,即常規(guī) SQL 的 AND 條件。

語(yǔ)法格式如下:

>db.col.find({key1:value1, key2:value2}).pretty()

MongoDB OR 條件

db.stu.find({$or:[{'age': 18},{name:'lisa'}]}).pretty()

AND 和 OR 聯(lián)合使用

db.stu.find({sex: '男'},{$or:[{age:{$gte: 20}},{name: 'lisa'}]}).pretty()

MongoDB?$type?操作符

$type操作符是基于BSON類型來檢索集合中匹配的數(shù)據(jù)類型末贾,并返回結(jié)果

MongoDB Limit() 方法

如果你需要在MongoDB中讀取指定數(shù)量的數(shù)據(jù)記錄闸溃,可以使用MongoDB的Limit方法,limit()方法接受一個(gè)數(shù)字參數(shù)拱撵,該參數(shù)指定從MongoDB中讀取的記錄條數(shù)辉川。

MongoDB Skip() 方法

我們除了可以使用limit()方法來讀取指定數(shù)量的數(shù)據(jù)外,還可以使用skip()方法來跳過指定數(shù)量的數(shù)據(jù)拴测,skip方法同樣接受一個(gè)數(shù)字參數(shù)作為跳過的記錄條數(shù)乓旗。

MongoDB sort()方法

在MongoDB中使用使用sort()方法對(duì)數(shù)據(jù)進(jìn)行排序,sort()方法可以通過參數(shù)指定排序的字段集索,并使用 1 和 -1 來指定排序的方式屿愚,其中 1 為升序排列,而-1是用于降序排列务荆。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末妆距,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子函匕,更是在濱河造成了極大的恐慌娱据,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盅惜,死亡現(xiàn)場(chǎng)離奇詭異中剩,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)抒寂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門结啼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蓬推,你說我怎么就攤上這事妆棒。” “怎么了沸伏?”我有些...
    開封第一講書人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵糕珊,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我毅糟,道長(zhǎng)红选,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任姆另,我火速辦了婚禮喇肋,結(jié)果婚禮上坟乾,老公的妹妹穿的比我還像新娘。我一直安慰自己蝶防,他們只是感情好甚侣,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著间学,像睡著了一般殷费。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上低葫,一...
    開封第一講書人閱讀 51,763評(píng)論 1 307
  • 那天详羡,我揣著相機(jī)與錄音,去河邊找鬼嘿悬。 笑死实柠,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的善涨。 我是一名探鬼主播窒盐,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼钢拧!你這毒婦竟也來了登钥?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤娶靡,失蹤者是張志新(化名)和其女友劉穎牧牢,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體姿锭,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡塔鳍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了呻此。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片轮纫。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖焚鲜,靈堂內(nèi)的尸體忽然破棺而出掌唾,到底是詐尸還是另有隱情,我是刑警寧澤忿磅,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布糯彬,位于F島的核電站,受9級(jí)特大地震影響葱她,放射性物質(zhì)發(fā)生泄漏撩扒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一吨些、第九天 我趴在偏房一處隱蔽的房頂上張望搓谆。 院中可真熱鬧炒辉,春花似錦、人聲如沸泉手。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)斩萌。三九已至啡氢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間术裸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工亭枷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留袭艺,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓叨粘,卻偏偏與公主長(zhǎng)得像猾编,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子升敲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容