1. 程式人生 > 其它 >mongodb入門-2-基本命令

mongodb入門-2-基本命令

接著上一章節,繼續來學習MDB的基本命令。

排序

MDB使用sort進行排序,指定KEY,1為升序,-1為降序

索引

終於來到最關心的命令和環節--索引,索引是提升效能關鍵,也是基礎。

使用createIndex建立索引,示例如下:

還可同時指定多個欄位組合索引,類似於MYSQL中的聚合索引。

createIndex(keys,options)
options如下:

需要注意的幾個命令:

background

建立索引時,會阻塞其他資料庫的操作,因此這個最好是指定一下為true

expireAfterSeconds

在型別為Date的欄位上建立索引,指定索引的expireAfterSeconds欄位,到期之後,集合資料會被刪除。

一些額外的命令:
1、檢視集合索引
db.col.getIndexes()
2、檢視集合索引大小
db.col.totalIndexSize()
3、刪除集合所有索引
db.col.dropIndexes()
4、刪除集合指定索引
db.col.dropIndex("索引名稱")

聚合

aggregate表示聚合,類似於MYSQL中的count或者sum等函式

具體的操作型別如表:

MDB聚合函式中,不同的函式的操作結果直接用於下一個操作函式,類似於UNIT、LINUX中的管道:
常見的幾個操作如下表:

下面的指令代表:
先按age>19進行match,出來的資料,
再按照name分組,
count欄位的資料來源於分組之後的age並被新增進的去重的set陣列。

多列group命令如下:

聚合的使用非常靈活,可以滿足很多查詢需求。通過$project命令返回特定的結構

若要將某一field(欄位)按照年月日周進行group,可以通過以下方式:

前提是改field本身是Date型別

複製

MDB通過副本操作提高了可用性。