摘要:用于存儲布爾值真假。將一個值與二進(jìn)制的元素的最低值和最高值相對比。可選,拋出異常的級別。在建立唯一索引時是否刪除重復(fù)記錄指定創(chuàng)建唯一索引。索引權(quán)重值,數(shù)值在到之間,表示該索引相對于其他索引字段的得分權(quán)重。
Robo 3T -< 可視化工具
http://blog.csdn.net/i_vic/ar...
[Unit] Description=mongodb After=network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf PrivateTmp=true [Install] WantedBy=multi-user.target基本概念
database 數(shù)據(jù)庫
collections 數(shù)據(jù)庫表/集合
document 數(shù)據(jù)記錄行/文檔
field 數(shù)據(jù)字段/域
index 索引
primary key 主鍵,mongodb默認(rèn)將_id字段設(shè)置成主鍵
常用命令
show dbs 顯示所有數(shù)據(jù)庫
db 顯示當(dāng)前數(shù)據(jù)庫
use runoob 切換到runoob數(shù)據(jù)庫
數(shù)據(jù)類型
String 字符串。存儲數(shù)據(jù)常用的數(shù)據(jù)類型。在 MongoDB 中,UTF-8 編碼的字符串才是合法的。
Integer 整型數(shù)值。用于存儲數(shù)值。根據(jù)你所采用的服務(wù)器,可分為 32 位或 64 位。
Boolean 布爾值。用于存儲布爾值(真/假)。
Double 雙精度浮點值。用于存儲浮點值。
Min/Max keys 將一個值與 BSON(二進(jìn)制的 JSON)元素的最低值和最高值相對比。
Arrays 用于將數(shù)組或列表或多個值存儲為一個鍵。
Timestamp 時間戳。記錄文檔修改或添加的具體時間。
Object 用于內(nèi)嵌文檔。
Null 用于創(chuàng)建空值。
Symbol 符號。該數(shù)據(jù)類型基本上等同于字符串類型,但不同的是,它一般用于采用特殊符號類型的語言。
Date 日期時間。用 UNIX 時間格式來存儲當(dāng)前日期或時間。你可以指定自己的日期時間:創(chuàng)建 Date 對象,傳入年月日信息。
Object ID 對象 ID。用于創(chuàng)建文檔的 ID。
Binary Data 二進(jìn)制數(shù)據(jù)。用于存儲二進(jìn)制數(shù)據(jù)。
Code 代碼類型。用于在文檔中存儲 JavaScript 代碼。
Regular expression 正則表達(dá)式類型。用于存儲正則表達(dá)式。
操作數(shù)據(jù)庫 創(chuàng)建數(shù)據(jù)庫
use database_name 如果數(shù)據(jù)庫不存在,則直接創(chuàng)建,如果存在,就切換到指定數(shù)據(jù)庫
刪除數(shù)據(jù)庫db.dropDatabase() 刪除當(dāng)前數(shù)據(jù)庫
刪除集合show tables db.collection.drop() 刪除collections collections用table名替換
刪除字段{$unset:{field:1}} ------ db.t3.update({name:"wangwenlong"},{$unset:{age:1}})
插入文檔語法:db.COLLECTION_NAME.insert(document)
db.col.insert({ title:"MongoDB教程", "by":"菜鳥教程", "url":"runoob.com", "tags":["mongodb","database","NoSQL"], "likes":100 })更新文檔
update()方法-> db.collection.update(, , { upsert: , multi: , writeConcern: } )
參數(shù)說明:
query: update的查詢條件,類似sql update查詢內(nèi)where后面的。
update:update的對象和一些更新的操作符(如$,$inc...)等,也可以理解為sql update查詢內(nèi)set后面的
upsert:可選,這個參數(shù)的意思是,如果不存在update的記錄,是否插入objNew,true為插入,默認(rèn)是false,不插入。
multi:可選,mongodb 默認(rèn)是false,只更新找到的第一條記錄,如果這個參數(shù)為true,就把按條件查出來多條記錄全部更新。
writeConcern:可選,拋出異常的級別。
db.runoob.update( {"title":"mongoDB教程"}, {$set:{"title":"MongoDB"}}, {multi:true} )
save()方法->
db.collection.save(, { writeConcern: } )
參數(shù)說明:
document:文檔數(shù)據(jù)
writeConcern:可選,拋出異常的級別。
更多實例:
只更新第一條記錄
db.col.update( {"count":{$gt:1}}, {$set:{"test2","ok"}} )
全部更新
db.col.update( {"count":{$gt:3}}, {$set:{"test2":"ok"}}, false, true )
只添加第一條
db.col.update( {"count":{$gt:4}}, {$set:{"test5":"ok"}}, true, false )
全部添加進(jìn)去
db.col.update( {"count":{$gt:5}}, {$set:{"test5":"ok"}}, true, true )
全部更新
db.col.update( {"count":{$gt:15}}, {$inc:{"count":1}}, false, true )
只更新第一條記錄
db.col.update( {"count":{$gt:10}}, {$inc:{"count":1}}, false, false )查找文檔
db.collection_name.find() db.collection_name.findOne()正則/模糊查詢
result = medicines.find_one({"goods_name":{"$regex":"^仁和"}})
與SQL WHERE 對比:
等于
db.col.find({"by":"菜鳥教程"}).pretty()
where by="菜鳥教程"
小于
db.col.find({"likes":{$lt:50}}).pretty()
where like < 50
小于或等于
db.col.find({"likes":{$lte:50}}).pretty()
where like <= 50
大于
db.col.find({"likes":{$gt:50}}).pretty()
where like > 50
大于或等于
db.col.find({"likes":{$gte:50}}).pretty()
where like >= 50
不等于
db.col.find({"likes":{$ne:50}}).pretty()
and 條件
db.col.find({key1:value1,key2:value2}).pretty()
OR 條件
db.col.find({$or:[{"by":"菜鳥教程"},{"title":"MongoDB教程"}]}).pretty()
AND 和 OR 聯(lián)合使用
db.col.find({"likes":$gt:50},$or:[{"by":"MongoDB中文網(wǎng)"},{"title":"MongoDB教程"}]).pretty()
db.col.find({"likes":{$lt:200,$gt:100}})
$type
$type操作符是基于BSON類型來檢索集合中匹配的數(shù)據(jù)類型,并返回結(jié)果。
只查詢某些字段 db.find({}, {"qaid": 1, "question": 1, "answer": 1, "_id": 0})
類型 | 數(shù)字 |
---|---|
Double | 1 |
String | 1 |
Object | 3 |
Array | 4 |
Binary data | 5 |
Undefined | 6 已廢棄。 |
Object id | 7 |
Boolean | 8 |
Date | 9 |
Null | 10 |
Regular Expression | 11 |
JavaScript | 13 |
Symbol | 14 |
JavaScript (with scope) | 15 |
32-bit integer | 16 |
Timestamp | 17 |
64-bit integer | 18 |
Min key | 255Query with -1. |
Max key | 127 |
db.collection_name.find().limit(NUMBER)
fets = phones.find().limit(2)
db.collection_name.find().limit(NUMBER).skip(NUMBER)
排序 sort()方法sort()方法可以通過參數(shù)指定排序的字段,并使用 1 和 -1 來指定排序的方式,其中 1 為升序排列,而-1是用于降序排列。
db.collection_name.find().sort({key:1})
fets = phones.find().sort("price",-1)
db.Account.find().sort("UserName") --默認(rèn)為升序 db.Account.find().sort("UserName",pymongo.ASCENDING) --升序 db.Account.find().sort("UserName",pymongo.DESCENDING) --降序刪除文檔
db.collection.remove(, { justone: , writeConcern: } )
參數(shù)說明:
query (可選)刪除的文檔的條件
justOne (可選)如果設(shè)為true或1,則只刪除一個文檔
writeConcern (可選)拋出異常的級別
4.
ensureIndex()方法
db.collection_name.eusureIndex({key:1}) key值是要創(chuàng)建的索引字段,1為指定按升序創(chuàng)建索引,-1是按降序來創(chuàng)建索引
db.col.ensure({"title":1,"description":-1})
參數(shù) | 類型 | 描述 |
---|---|---|
background | Boolean | 建索引過程會阻塞其它數(shù)據(jù)庫操作,background可指定以后臺方式創(chuàng)建索引,即增加 "background" 可選參數(shù)。 "background" 默認(rèn)值為false。 |
unique | Boolean | 建立的索引是否唯一。指定為true創(chuàng)建唯一索引。默認(rèn)值為false. |
name | string | 索引的名稱。如果未指定,MongoDB的通過連接索引的字段名和排序順序生成一個索引名稱。 |
dropDups | string | 在建立唯一索引時是否刪除重復(fù)記錄,指定 true 創(chuàng)建唯一索引。默認(rèn)值為 false. |
sparse | string | 對文檔中不存在的字段數(shù)據(jù)不啟用索引;這個參數(shù)需要特別注意,如果設(shè)置為true的話,在索引字段中不會查詢出不包含對應(yīng)字段的文檔.。默認(rèn)值為 false. |
expireAfterSeconds | string | 指定一個以秒為單位的數(shù)值,完成 TTL設(shè)定,設(shè)定集合的生存時間。 |
v | string | 索引的版本號。默認(rèn)的索引版本取決于mongod創(chuàng)建索引時運行的版本。 |
weights | string | 索引權(quán)重值,數(shù)值在 1 到 99,999 之間,表示該索引相對于其他索引字段的得分權(quán)重。 |
default_language | string | 對于文本索引,該參數(shù)決定了停用詞及詞干和詞器的規(guī)則的列表。 默認(rèn)為英語 |
language_override | string | 對于文本索引,該參數(shù)指定了包含在文檔中的字段名,語言覆蓋默認(rèn)的language,默認(rèn)值為 language. |
需要做的:
MongoDB聚合MongoDB中聚合(aggregate)主要用于處理數(shù)據(jù)(諸如統(tǒng)計平均值,求和等),并返回計算后的數(shù)據(jù)結(jié)果。有點類似sql語句中的 count(*)。
MongoDB中聚合的方法使用aggregate()
方法:
pymongo使用問題mongodb的復(fù)制最少需要提供兩個節(jié)點。一個是主節(jié)點,負(fù)責(zé)處理客戶端需求,其他的都是從節(jié)點,負(fù)責(zé)復(fù)制主節(jié)點上的數(shù)據(jù)
將ObjectId序列化:
from bson import json_util json.dumps(fet, default=json_util.default, ensure_ascii=False)
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/19096.html
摘要:在上安裝有兩種方法下載安裝包安裝使用安裝方式下載安裝包安裝注意在中不支持像方式,只好用方式來下載。再打開一個終端窗口,執(zhí)行以下命令停止在開啟服務(wù)的控制臺,即可停止或者直接關(guān)閉開啟服務(wù)的控制臺。 在Mac上安裝MongoDB有兩種方法: 下載安裝包安裝 使用 brew 安裝 1. curl方式下載安裝包安裝 注意:在mac中不支持像wget方式,只好用curl方式來下載。 可以直接到...
摘要:在上安裝有兩種方法下載安裝包安裝使用安裝方式下載安裝包安裝注意在中不支持像方式,只好用方式來下載。再打開一個終端窗口,執(zhí)行以下命令停止在開啟服務(wù)的控制臺,即可停止或者直接關(guān)閉開啟服務(wù)的控制臺。 在Mac上安裝MongoDB有兩種方法: 下載安裝包安裝 使用 brew 安裝 1. curl方式下載安裝包安裝 注意:在mac中不支持像wget方式,只好用curl方式來下載。 可以直接到...
背景 學(xué)習(xí)MongoDB,并做筆記整理,以便于用到時查看。 MogoDB NoSQL Database(JS) 使用方便,想存就存,相取就取 是MEAN中的M(數(shù)據(jù)) 安裝 https://www.mongodb.com/downl... 選擇相應(yīng)系統(tǒng)安裝包 安裝mongoose 創(chuàng)建一個文件夾,并npm init --yes,創(chuàng)建package.js npm install mongoos...
摘要:學(xué)習(xí)筆記一安裝測試配置下載安裝從官網(wǎng)下載對應(yīng)的壓縮包解壓即可。 mongo學(xué)習(xí)筆記 一 安裝測試配置 1 下載安裝 從mongodb官網(wǎng)下載對應(yīng)的壓縮包,解壓即可。 copy命令到/usr/local/bin目錄 (cp mongod /usr/local/bin;cp mongo /usr/local/bin) 2 創(chuàng)建配置文件 參考官方文檔https:/...
閱讀 2358·2021-11-22 12:01
閱讀 2060·2021-11-12 10:34
閱讀 4581·2021-09-22 15:47
閱讀 2898·2019-08-30 15:56
閱讀 2899·2019-08-30 15:53
閱讀 2450·2019-08-30 13:53
閱讀 3457·2019-08-29 15:35
閱讀 3166·2019-08-29 12:27