摘要:用于存儲布爾值真假。將一個值與二進制的元素的最低值和最高值相對比。可選,拋出異常的級別。在建立唯一索引時是否刪除重復記錄指定創建唯一索引。索引權重值,數值在到之間,表示該索引相對于其他索引字段的得分權重。
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 數據庫
collections 數據庫表/集合
document 數據記錄行/文檔
field 數據字段/域
index 索引
primary key 主鍵,mongodb默認將_id字段設置成主鍵
常用命令
show dbs 顯示所有數據庫
db 顯示當前數據庫
use runoob 切換到runoob數據庫
數據類型
String 字符串。存儲數據常用的數據類型。在 MongoDB 中,UTF-8 編碼的字符串才是合法的。
Integer 整型數值。用于存儲數值。根據你所采用的服務器,可分為 32 位或 64 位。
Boolean 布爾值。用于存儲布爾值(真/假)。
Double 雙精度浮點值。用于存儲浮點值。
Min/Max keys 將一個值與 BSON(二進制的 JSON)元素的最低值和最高值相對比。
Arrays 用于將數組或列表或多個值存儲為一個鍵。
Timestamp 時間戳。記錄文檔修改或添加的具體時間。
Object 用于內嵌文檔。
Null 用于創建空值。
Symbol 符號。該數據類型基本上等同于字符串類型,但不同的是,它一般用于采用特殊符號類型的語言。
Date 日期時間。用 UNIX 時間格式來存儲當前日期或時間。你可以指定自己的日期時間:創建 Date 對象,傳入年月日信息。
Object ID 對象 ID。用于創建文檔的 ID。
Binary Data 二進制數據。用于存儲二進制數據。
Code 代碼類型。用于在文檔中存儲 JavaScript 代碼。
Regular expression 正則表達式類型。用于存儲正則表達式。
操作數據庫 創建數據庫
use database_name 如果數據庫不存在,則直接創建,如果存在,就切換到指定數據庫
刪除數據庫db.dropDatabase() 刪除當前數據庫
刪除集合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: } )
參數說明:
query: update的查詢條件,類似sql update查詢內where后面的。
update:update的對象和一些更新的操作符(如$,$inc...)等,也可以理解為sql update查詢內set后面的
upsert:可選,這個參數的意思是,如果不存在update的記錄,是否插入objNew,true為插入,默認是false,不插入。
multi:可選,mongodb 默認是false,只更新找到的第一條記錄,如果這個參數為true,就把按條件查出來多條記錄全部更新。
writeConcern:可選,拋出異常的級別。
db.runoob.update( {"title":"mongoDB教程"}, {$set:{"title":"MongoDB"}}, {multi:true} )
save()方法->
db.collection.save(, { writeConcern: } )
參數說明:
document:文檔數據
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 )
全部添加進去
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 聯合使用
db.col.find({"likes":$gt:50},$or:[{"by":"MongoDB中文網"},{"title":"MongoDB教程"}]).pretty()
db.col.find({"likes":{$lt:200,$gt:100}})
$type
$type操作符是基于BSON類型來檢索集合中匹配的數據類型,并返回結果。
只查詢某些字段 db.find({}, {"qaid": 1, "question": 1, "answer": 1, "_id": 0})
類型 | 數字 |
---|---|
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()方法可以通過參數指定排序的字段,并使用 1 和 -1 來指定排序的方式,其中 1 為升序排列,而-1是用于降序排列。
db.collection_name.find().sort({key:1})
fets = phones.find().sort("price",-1)
db.Account.find().sort("UserName") --默認為升序 db.Account.find().sort("UserName",pymongo.ASCENDING) --升序 db.Account.find().sort("UserName",pymongo.DESCENDING) --降序刪除文檔
db.collection.remove(, { justone: , writeConcern: } )
參數說明:
query (可選)刪除的文檔的條件
justOne (可選)如果設為true或1,則只刪除一個文檔
writeConcern (可選)拋出異常的級別
4.
ensureIndex()方法
db.collection_name.eusureIndex({key:1}) key值是要創建的索引字段,1為指定按升序創建索引,-1是按降序來創建索引
db.col.ensure({"title":1,"description":-1})
參數 | 類型 | 描述 |
---|---|---|
background | Boolean | 建索引過程會阻塞其它數據庫操作,background可指定以后臺方式創建索引,即增加 "background" 可選參數。 "background" 默認值為false。 |
unique | Boolean | 建立的索引是否唯一。指定為true創建唯一索引。默認值為false. |
name | string | 索引的名稱。如果未指定,MongoDB的通過連接索引的字段名和排序順序生成一個索引名稱。 |
dropDups | string | 在建立唯一索引時是否刪除重復記錄,指定 true 創建唯一索引。默認值為 false. |
sparse | string | 對文檔中不存在的字段數據不啟用索引;這個參數需要特別注意,如果設置為true的話,在索引字段中不會查詢出不包含對應字段的文檔.。默認值為 false. |
expireAfterSeconds | string | 指定一個以秒為單位的數值,完成 TTL設定,設定集合的生存時間。 |
v | string | 索引的版本號。默認的索引版本取決于mongod創建索引時運行的版本。 |
weights | string | 索引權重值,數值在 1 到 99,999 之間,表示該索引相對于其他索引字段的得分權重。 |
default_language | string | 對于文本索引,該參數決定了停用詞及詞干和詞器的規則的列表。 默認為英語 |
language_override | string | 對于文本索引,該參數指定了包含在文檔中的字段名,語言覆蓋默認的language,默認值為 language. |
需要做的:
MongoDB聚合MongoDB中聚合(aggregate)主要用于處理數據(諸如統計平均值,求和等),并返回計算后的數據結果。有點類似sql語句中的 count(*)。
MongoDB中聚合的方法使用aggregate()
方法:
pymongo使用問題mongodb的復制最少需要提供兩個節點。一個是主節點,負責處理客戶端需求,其他的都是從節點,負責復制主節點上的數據
將ObjectId序列化:
from bson import json_util json.dumps(fet, default=json_util.default, ensure_ascii=False)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/19096.html
摘要:在上安裝有兩種方法下載安裝包安裝使用安裝方式下載安裝包安裝注意在中不支持像方式,只好用方式來下載。再打開一個終端窗口,執行以下命令停止在開啟服務的控制臺,即可停止或者直接關閉開啟服務的控制臺。 在Mac上安裝MongoDB有兩種方法: 下載安裝包安裝 使用 brew 安裝 1. curl方式下載安裝包安裝 注意:在mac中不支持像wget方式,只好用curl方式來下載。 可以直接到...
摘要:在上安裝有兩種方法下載安裝包安裝使用安裝方式下載安裝包安裝注意在中不支持像方式,只好用方式來下載。再打開一個終端窗口,執行以下命令停止在開啟服務的控制臺,即可停止或者直接關閉開啟服務的控制臺。 在Mac上安裝MongoDB有兩種方法: 下載安裝包安裝 使用 brew 安裝 1. curl方式下載安裝包安裝 注意:在mac中不支持像wget方式,只好用curl方式來下載。 可以直接到...
背景 學習MongoDB,并做筆記整理,以便于用到時查看。 MogoDB NoSQL Database(JS) 使用方便,想存就存,相取就取 是MEAN中的M(數據) 安裝 https://www.mongodb.com/downl... 選擇相應系統安裝包 安裝mongoose 創建一個文件夾,并npm init --yes,創建package.js npm install mongoos...
摘要:學習筆記一安裝測試配置下載安裝從官網下載對應的壓縮包解壓即可。 mongo學習筆記 一 安裝測試配置 1 下載安裝 從mongodb官網下載對應的壓縮包,解壓即可。 copy命令到/usr/local/bin目錄 (cp mongod /usr/local/bin;cp mongo /usr/local/bin) 2 創建配置文件 參考官方文檔https:/...
閱讀 2317·2021-11-22 12:01
閱讀 1997·2021-11-12 10:34
閱讀 4518·2021-09-22 15:47
閱讀 2832·2019-08-30 15:56
閱讀 2865·2019-08-30 15:53
閱讀 2405·2019-08-30 13:53
閱讀 3378·2019-08-29 15:35
閱讀 3127·2019-08-29 12:27