1. 程式人生 > >MongoDB常用命令彙總之基本聚合函式。

MongoDB常用命令彙總之基本聚合函式。

count

作用:簡單統計集合中符合某種條件的文件數量。

使用方式:db.collection.count(<query>)或者db.collection.find(<query>).count();

引數說明:其中<query>是用於查詢的目標條件。如果出了想限定查出來的最大文件數,或者想統計後跳過指定條數的文件,則需要藉助limit,skip。

舉例:

db.collection.find(<query>).limit().count();

db.collection.find(<query>).skip().count();

distinct

作用:用於對集合中的文件針對進行去重處理。

使用方式:db.collection.distinct(field , query);

引數說明:field是去重欄位,可以是單個的欄位名,也可以是巢狀的欄位名;query是查詢條件,可以為空。

舉例:

db.collection.distinct("user" , {"age" : {$gt : 28}}); // 用於查詢年齡age大於28歲的不同使用者名稱

除了上面的用法外,還可以使用下面的另一種方法:

db.runCommand({"distinct" : "collectionname" , "key" : "distinctfined" , "query" : <query>});

collectionname : 去重統計的集合名, distinctfield : 去重欄位, <query> : 可選的限制條件。

這兩種方式的區別:第一種方法是對第二種方法的封裝,第一種只返回去重統計後的欄位值集合,但第二種方式即返回欄位值集合也返回統計時的細節資訊。

group

作用:用於提供比count、distinct更豐富的統計需求,可以使用js函式控制統計邏輯。

使用方式:db.collection.group(key , reduce , initial [, keyf] [, cond] [, finalize]);

引數說明:key:用於分組文件的欄位。和keyf兩者必須有一個;

                    keyf:可以接受一個javaScript函式。用於動態的確定分組文件的欄位,和key兩者必須有一個;

                    initial:reduce中使用變數的初始化;

                    reduce:執行reduce函式。函式需要返回值;

                    cond:執行過濾的條件;

                    finalize:在reduce執行完成,結果集返回之前對結果集最終執行的函式。可選的。

備註說明:在2.2版本之前,group操作最多隻能返回10,000條返祖記錄,但是從2.2版本之後到2.4版本,mongodb做了優化,能夠支援返回20,000條分組記錄返回,如果分組記錄的條數大於20,000條,那麼可能你就需要其他方式進行統計了,比如聚合管道或者MapReduce。

相關推薦

MongoDB常用命令彙總基本聚合函式

count 作用:簡單統計集合中符合某種條件的文件數量。 使用方式:db.collection.count(<query>)或者db.collection.find(<query>).count(); 引數說明:其中<query>是用於

MongoDB常用命令彙總聚集集合查詢

查詢所有記錄 db.userInfo.find(); // 相當於 select * from userInfo預設每頁顯示20條記錄,當顯示不下的情況下,可以用it迭代命令查詢下一頁資料。注意:鍵入

MongoDB常用命令彙總檢視聚集集合基本資訊

檢視幫助 db.yourColl.help();檢視當前集合的資料條數 db.yourColl.count();檢視資料空間大小 db.userInfo.dataSize();得到當前聚集集合所在的d

MongoDB常用命令彙總插入、更新和刪除操作詳解

Insurt操作 insurt操作是MongoDB插入資料的基本方法,對目標集合使用Insert操作,會將該文件新增到MongoDB並自動生成相應的ID鍵。文件結果採用類似JSON的BSON格式。常見的插入操作主要有單挑插入和批量插入兩種形式。插入時只是簡單地將文件存入資

MongoDBaggregate聚合函式應用

萬事看文件切記詳見 大牛部落格:詳見 優秀部落格:詳見 前言 公司最近在使用MongoDB作為資料庫儲存,學習應用了MongoDB的使用。作為非關係性資料庫的代表,主要是以文件格式儲存的資料庫,靈活的欄位,收到很多開發人員的喜歡。 本人在使用了一天

【ffmpeg】視訊編解碼ffmpeg命令列工具的常用命令彙總

H264視訊轉ts視訊流 ffmpeg -i test.h264 -vcodec copy -f mpegts test.ts H264視訊轉mp4 ffmpeg -i test.h264 -vcodec copy -f mp4 test.mp4 ts視訊轉mp4 ffmpeg

嵌入式Linux C程式設計學習路(二)——常用命令彙總1

一、使用者管理類命令 1:格式:useradd [選項] 使用者名稱 useradd kkkw   -新增名字為kkkw的使用者,當用戶建立成功後,會在/home/ 目錄下生成與使用者名稱同名的目錄 [root@loc home]# useradd kkkw [roo

mongodb常用命令

新的 tab cap god cti true 相同 uno use show dbs查看所有的數據庫show tables查看所有的集合db顯示當前的數據庫use+name切換到指定的數據庫,如果不存在則創建新的文檔是一組鍵值(key-value)對(即BSON)。Mon

centos7與centos6常用命令不同處匯總

centos 7(1)文件系統[CentOS6] ext4[CentOS7] xfs(2)內核版本[CentOS6] 2.6.x-x[CentOS7] 3.10.x-x(3)防火墻[CentOS6] iptables[CentOS7] firewalld(4)默認數據庫[CentOS6] MySQL[Cent

Mysql常用命令操作增刪改查

賬號 建立 批量插入 創建表 tab use 常用命令 default images 1.數據庫操作: 1.1 創建數據庫 : create database <數據庫名> a.建立一個名為oldboy_default的數據

Kafka常用命令彙總

Kafka常用命令彙總: 1、列出叢集裡的所有主題。 kafka-topics.sh --zookeeper localhost:2181 --list [[email protected] ~]$ kafka-topics.sh --zookeeper localhost:218

MongoDB常用命令及pycharm連結MongoDB

MongoDB常用命令及pycharm連結MongoDB 1.安裝 --見world文件 2.啟動 1.在windows中啟動 1.切換到 安裝目錄的bin目錄下 1. e: 切換碟符 2. cd E:\Program Files\MongoDB\Server\3.4\bin 切換路徑

Vim常用命令彙總

三種模式 命令模式 編輯模式 底線命令模式 常用命令 切換到編輯模式 i:游標處插入 I:該行首插入 A:該行末插入 o:開闢下一行並插入 O:開闢上一行並插入 移動游標 $:行末 ^:行首

linux部署專案常用命令彙總

啟動tomcat:./startup.sh 停止tomcat:shutdown.sh 檢視是否啟動:ps -ef | grep tomcat 檢視通tomcat實時日誌:tail -f catalina.out 殺死程序:kill -9 5144 根據文字搜尋關鍵字:grep O

github常用命令彙總

創立版本庫 mkdir Baidu cd Baidu git init SSH ssh-keygen -t -rsa -C “[email protected]” (在github上new SSH,內容為id_rsa.pub) 新增遠端庫 (github上新建git倉庫

Android中的常用命令彙總

工欲善其事必先利其器,在Android開發過程中,為了開發除錯,查詢問題的需要,必須掌握一些常用的命令的用法,這裡總結了一些在Android開發中經常會用到的命令,一共15個。 1、ps 列出所有的程序 這個命令是Android除錯和問題查詢的時候經常會用到的一個命令,在不帶引數的情況下

Mongodb 常用命令整理

一、超級使用者相關: 進入資料庫admin use admin 增加或修改使用者密碼 db.addUser(‘name’,’pwd’) 檢視使用者列表 db.system.users.find() 使用者認證 db

MongoDB常用命令整理

find 查詢條件 官方文件 操作符 含義 式例 $ lt < db.user.find({“age”:{“$ lt”:18}}) $

git使用中常用命令彙總

git init:初始化當前目錄為git倉庫 git clone 倉庫地址:下載一份git倉庫到本地(clone下來的倉庫的預設名為origin,而且下載的是主分支,主分支一般是master) git status:檢查本地是否有更新。 git status -s:和g

git常用命令彙總

比較不同    git diff  比較本地和快取區的不同   git diff --cached 比較快取區和分支的不同 刪除和還原     rm test.txt 刪除本地檔案     git rm test.txt 刪除git檔案 撤銷修改和刪除: 1