JavaScript按日期查詢MongoDB中的數(shù)據(jù)的要點(diǎn)示例
group by date 聚合查詢?nèi)掌?統(tǒng)計(jì)每天數(shù)據(jù)(信息量)
1
{ "_id" : ObjectId("557ac1e2153c43c320393d9d"), "msgType" : "text", "sendTime" : ISODate("2015-06-12T11:26:26.000Z") }
2
{ "_id" : ObjectId("557ac1ee153c43c320393d9e"), "msgType" : "text", "sendTime" : ISODate("2015-06-12T11:26:38.000Z") }
3
{ "_id" : ObjectId("557ac2012de5d32d213963b5"), "msgType" : "text", "sendTime" : ISODate("2015-06-12T11:26:56.000Z") }
4
{ "_id" : ObjectId("557ac978bb31196e21d23868"), "msgType" : "text", "sendTime" : ISODate("2015-06-12T11:58:47.000Z") }
5
{ "_id" : ObjectId("557ac9afbb31196e21d23869"), "msgType" : "text", "sendTime" : ISODate("2015-06-12T11:59:43.000Z") }
SQL Here
db.getCollection('wechat_message').aggregate( [ { $project : { day : {$substr: ["$sendTime", 0, 10] }}}, { $group : { _id : "$day", number : { $sum : 1 }}}, { $sort : { _id : -1 }} ] )
Result Here
"result" : [ { "_id" : "2015-07-06", "number" : 13.0000000000000000 }, { "_id" : "2015-07-05", "number" : 3.0000000000000000 }, { "_id" : "2015-07-03", "number" : 10.0000000000000000 }, { "_id" : "2015-07-02", "number" : 29.0000000000000000 }, ]
查詢某一天所有信息的3種方法,根據(jù)日期查詢
mongodb的查詢真讓人難以琢磨,就查詢單天信息,都需要花費(fèi)一番功夫才行。
第一種方式:
coll.aggregate([ {$project:{sendDate: {$substr: ['$sendTime', 0, 10]}, sendTime: 1, content:1}}, {$match:{sendDate: '2015-07-05'}}, ])
第二種方式(第一種的變異):
coll.aggregate([ {$match: {'sendTime': {'$gte': new Date('2015-07-05'), '$lt': new Date('2015-07-06')}}}
第三中方式(第二種的變異):
coll.aggregate([ {$match: {'sendTime': {'$gte': new Date('2015-07-05 00:00:00'), '$lte': new Date('2015-07-05 23:59:59')}}}
查詢結(jié)果如下(展示一種方式:其他展示略有不同):
[ { _id: 5599b09bc16aac90e9fb7995, sendDate: '2015-07-05' }, { _id: 5599b161c16aac90e9fb7996, sendDate: '2015-07-05' }, { _id: 5599b161c16aac90e9fb7997, sendDate: '2015-07-05' } ]
相關(guān)文章
MongoDB中的常用操作$push、$pushAll和$pull示例詳解
MongoDB從2.2版本開始支持$push操作符,$push是用于在數(shù)組中添加一個(gè)元素的更新操作符,它將指定的值追加到數(shù)組的末尾,本文給大家介紹MongoDB的常用操作$push、$pushAll和$pull,感興趣的朋友一起看看吧2023-12-12MongoDB數(shù)據(jù)庫中索引和explain的使用教程
這篇文章主要給大家介紹了關(guān)于MongoDB數(shù)據(jù)庫中索引和explain使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Mongodb具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08MongoDB的聚合框架Aggregation Framework入門學(xué)習(xí)教程
MongoDB中的聚合aggregate主要用于處理數(shù)據(jù)計(jì)算,這里我們就來詳細(xì)整理MongoDB的聚合框架Aggregation Framework入門學(xué)習(xí)教程,需要的朋友可以參考下2016-07-07mongodb 修改器($inc/$set/$unset/$push/$pop/upsert)
對(duì)于文檔的更新除替換外,針對(duì)某個(gè)或多個(gè)文檔只需要部分更新可使用原子的更新修改器,能夠高效的進(jìn)行文檔更新。更新修改器是中特殊的鍵2017-04-04關(guān)于Mongodb 認(rèn)證鑒權(quán)你需要知道的一些事
最近因?yàn)閙ongodb被黑了,早先我就疑惑過怎么這東西開啟服務(wù)就能用了,后來找了各方資料,知道MongoDB默認(rèn)是沒有鑒權(quán)的,所以這篇文章主要給大家介紹了關(guān)于Mongodb認(rèn)證鑒權(quán)你需要知道的一些事,需要的朋友可以參考下。2017-10-10對(duì)標(biāo)mongodb存儲(chǔ)類JSON數(shù)據(jù)文檔統(tǒng)計(jì)分析詳解
這篇文章主要介紹了對(duì)標(biāo)mongodb存儲(chǔ)類JSON數(shù)據(jù)文檔統(tǒng)計(jì)分析,只是介紹了簡單的查詢,其實(shí)針對(duì)各種統(tǒng)計(jì)分析場(chǎng)景,clickhouse提供了超級(jí)多的統(tǒng)計(jì)分析函數(shù)、窗口函數(shù)等等,當(dāng)然針對(duì)數(shù)組的數(shù)據(jù)類型也有很多的統(tǒng)計(jì)分析函數(shù),需要的朋友可以參考下2022-06-06MongoDB數(shù)據(jù)庫性能監(jiān)控詳解
MongoDB作為圖片和文檔的存儲(chǔ)數(shù)據(jù)庫,為啥不直接存MySQL里,還要搭個(gè)MongoDB集群,麻不麻煩?這篇文章就帶你介紹MongoDB數(shù)據(jù)庫性能監(jiān)控,感興趣的同學(xué)可以參考閱讀2023-03-03