成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識(shí)庫 > mongodb中按天進(jìn)行聚合查詢的實(shí)例教程

mongodb中按天進(jìn)行聚合查詢的實(shí)例教程

熱門標(biāo)簽:呼和浩特電銷外呼系統(tǒng)加盟 蘋果汽車租賃店地圖標(biāo)注 電銷機(jī)器人是什么軟件 怎么投訴地圖標(biāo)注 濟(jì)南電銷機(jī)器人加盟公司 云南外呼系統(tǒng) 老虎洗衣店地圖標(biāo)注 杭州人工電銷機(jī)器人價(jià)格 廣州長安公司怎樣申請(qǐng)400電話

前言

最近在寫項(xiàng)目的時(shí)候遇到一個(gè)問題,使用mongodb記錄了用例的執(zhí)行結(jié)果,但是在時(shí)間的記錄上使用的是date格式,現(xiàn)在有一個(gè)需求,以天為單位,統(tǒng)計(jì)一下每天成功的用例和失敗的用例,說到統(tǒng)計(jì),肯定是要用到聚合查詢,但是如果以date格式的時(shí)間為group依據(jù),那么等同于沒有分組,因?yàn)樵谟涗浻美臅r(shí)間幾乎不可能同時(shí),今天查閱了一下相關(guān)文檔,可以使用mongodb的$dateToString命令來完成這個(gè)需求

問題來源

假如我們以如下的數(shù)據(jù)

/* 1 */
{
 "_id" : ObjectId("5d24c09651a456efbc231669"),
 "time" : ISODate("2019-07-08T10:12:35.125Z"),
 "result" : "Pass"
}

/* 2 */
{
 "_id" : ObjectId("5d24c09e51a456efbc23166a"),
 "time" : ISODate("2019-07-08T10:12:36.125Z"),
 "result" : "Pass"
}

...
...

/* 10 */
{
 "_id" : ObjectId("5d24c0d851a456efbc231672"),
 "time" : ISODate("2019-07-06T10:10:52.125Z"),
 "result" : "Pass"
}

/* 11 */
{
 "_id" : ObjectId("5d24c0e751a456efbc231673"),
 "time" : ISODate("2019-07-06T10:10:52.125Z"),
 "result" : "Fail"
}

我的預(yù)期結(jié)果是

{'_id': '2019-07-06', 'Pass': 1}
{'_id': '2019-07-06', 'Fail': 2}
{'_id': '2019-07-07', 'Pass': 2}
{'_id': '2019-07-07', 'Fail': 1}
{'_id': '2019-07-08', 'Pass': 2}
{'_id': '2019-07-08', 'Fail': 3}

如果按照以前的聚合方式,通過$time來分組,由于每個(gè)時(shí)間都不相同,所以這樣的聚合就相當(dāng)于沒有聚合

#coding:utf-8

from pymongo import MongoClient

client = MongoClient(host=['%s:%s'%("127.0.0.1",27017)])
G_mongo = client['test']

pipeline = [
  {'$group': {'_id': '$time', 'count': {'$sum': 1}}},
 ]
for i in G_mongo['test'].aggregate(pipeline):
 print(i)

得到的結(jié)果

{'_id': datetime.datetime(2019, 7, 6, 10, 10, 32, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 7, 10, 10, 32, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 8, 10, 11, 22, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 6, 10, 10, 52, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 8, 10, 11, 32, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 8, 10, 12, 32, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 7, 10, 11, 22, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 8, 10, 12, 36, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 8, 10, 12, 35, 125000), 'count': 1}
{'_id': datetime.datetime(2019, 7, 7, 10, 10, 22, 125000), 'count': 1}

可以看到,由于$time上的時(shí)間,誰和誰都不一樣,所以如果以$time為分組對(duì)象的話每個(gè)統(tǒng)計(jì)都是1。

問題的解決

在分組的時(shí)候有一個(gè)$dateToString指令,可以將日期格式的值轉(zhuǎn)化為字符串,比如這里因?yàn)樾枨笫且蕴鞛閱挝?,所以我將其轉(zhuǎn)為
%Y-%m-%d的字符串格式,具體的$grouop如下

{'$group': {'_id': {"$dateToString":{'format':'%Y-%m-%d','date':'$time'}}, 'count': {'$sum': 1}}}

$dateToString的說明文檔可以訪問https://docs.mongodb.com/manual/reference/operator/aggregation/dateToString/ 查看,簡單介紹一個(gè)

{ $dateToString: {
  date: dateExpression>,
  format: formatString>,
  timezone: tzExpression>,
  onNull: expression>
} }

它需要四個(gè)參數(shù),只有date參數(shù)是必須的,指定數(shù)據(jù)來源,format是轉(zhuǎn)化的格式,timezone為時(shí)區(qū),onNull是如果日期值不存在時(shí)返回的值。

#coding:utf-8

from pymongo import MongoClient

client = MongoClient(host=['%s:%s'%("127.0.0.1",27017)])
G_mongo = client['test']


pipeline = [
    # {'$group': {'_id': '$time', 'count': {'$sum': 1}}},
    {'$group': {'_id': {"$dateToString":{'format':'%Y-%m-%d','date':'$time'}}, 'count': {'$sum': 1}}}
  ]
for i in G_mongo['test'].aggregate(pipeline):
  print(i)

上面代碼執(zhí)行的結(jié)果如下

{'_id': '2019-07-06', 'count': 2}
{'_id': '2019-07-07', 'count': 3}
{'_id': '2019-07-08', 'count': 5}

這個(gè)看起來還不錯(cuò),但是離我的目標(biāo)還差一點(diǎn),因?yàn)樗€沒有按照用例執(zhí)行結(jié)果進(jìn)行分組,再以天進(jìn)行倒序排列

#coding:utf-8

from pymongo import MongoClient

client = MongoClient(host=['%s:%s'%("127.0.0.1",27017)])
G_mongo = client['test']


pipeline = [
    # {'$group': {'_id': '$time', 'count': {'$sum': 1}}},
    {'$group': {'_id': {'date':{"$dateToString":{'format':'%Y-%m-%d','date':'$time'}},'result':'$result'}, 'count': {'$sum': 1}}},
    {'$sort':{"_id.date":-1}}
  ]
for i in G_mongo['test'].aggregate(pipeline):
  print(i)

得到的結(jié)果如下

{'_id': {'date': '2019-07-08', 'result': 'Fail'}, 'count': 3}
{'_id': {'date': '2019-07-08', 'result': 'Pass'}, 'count': 2}
{'_id': {'date': '2019-07-07', 'result': 'Pass'}, 'count': 2}
{'_id': {'date': '2019-07-07', 'result': 'Fail'}, 'count': 1}
{'_id': {'date': '2019-07-06', 'result': 'Fail'}, 'count': 1}
{'_id': {'date': '2019-07-06', 'result': 'Pass'}, 'count': 2}

查看文檔,除了使用$dateToString指令還可以使用$dayOfMonth指令

pipeline = [
    {'$group': {'_id': {'date':{"$dayOfMonth":{'date':'$time'}},'result':'$result'}, 'count': {'$sum': 1}}},
    {'$sort':{"_id.date":-1}},
  ]

但是這個(gè)指令只能適用于單一月份,如果兩個(gè)月就會(huì)有交集,如7月6號(hào)和6月6號(hào)的會(huì)聚合到一起
上面得到的結(jié)果是

{'_id': {'date': 8, 'result': 'Fail'}, 'count': 3}
{'_id': {'date': 8, 'result': 'Pass'}, 'count': 2}
{'_id': {'date': 7, 'result': 'Pass'}, 'count': 2}
{'_id': {'date': 7, 'result': 'Fail'}, 'count': 1}
{'_id': {'date': 6, 'result': 'Pass'}, 'count': 2}
{'_id': {'date': 6, 'result': 'Fail'}, 'count': 1}

所以需要根據(jù)需求靈活的使用各種指令。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • JAVA mongodb 聚合幾種查詢方式詳解
  • MongoDB教程之聚合(count、distinct和group)
  • Mongodb聚合函數(shù)count、distinct、group如何實(shí)現(xiàn)數(shù)據(jù)聚合操作
  • MongoDB聚合功能淺析
  • MongoDB入門教程之聚合和游標(biāo)操作介紹
  • MongoDB聚合分組取第一條記錄的案例與實(shí)現(xiàn)方法
  • mongodb聚合_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
  • mongoDB中聚合函數(shù)java處理示例詳解

標(biāo)簽:興安盟 廈門 玉林 雞西 泰安 遼陽 自貢 無錫

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mongodb中按天進(jìn)行聚合查詢的實(shí)例教程》,本文關(guān)鍵詞  mongodb,中按天,進(jìn)行,聚合,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mongodb中按天進(jìn)行聚合查詢的實(shí)例教程》相關(guān)的同類信息!
  • 本頁收集關(guān)于mongodb中按天進(jìn)行聚合查詢的實(shí)例教程的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    人妻互换一区二区激情偷拍| 亚洲精品高清无码视频| 黄色一级视频免费看| 国产精品免费一区二区三区观看| 亚洲日韩欧美一区二区在线| 国产jzjzjz丝袜老师水多| 久久婷婷人人澡人人喊人人爽| 精品久久毛片| 亚洲欧洲国产日本综合| 免费观看性欧美大片无片| 日韩欧美成人精品| 男女18免费网站视频| 最新天堂中文在线| 精品蜜桃一区二区三区| 一本色道久久综合亚洲精品酒店| 久久久www成人免费精品| 亚洲午夜三级在线| 欧美高清视频在线高清观看mv色露露十八| 免费国产一区二区| 天天干夜夜艹| 久久97精品久久久久久久不卡| 日韩av在线导航| 欧美性天天影院| 成人avav影音| 欧美精品久久99| 成人av网址在线观看| 成年丰满熟妇午夜免费视频| 91制片厂免费观看| 久久久三级国产网站| 9.1成人看片| 中国黄色片视频| 无码人妻一区二区三区在线视频| 天天av天天翘天天综合网| 精品国产91久久久久久| 台湾亚洲精品一区二区tv| 最近免费中文字幕视频2019| 国内精品久久久久久野外| 欧美一区二视频在线免费观看| 爱啪视频在线观看视频免费| 少妇久久久久| 日本熟妇毛茸茸丰满| 一区二区三区日韩精品视频| 欧美激情在线一区二区三区| 美日韩中文字幕| 无码一区二区三区| 中文字幕一区日韩精品| 成人国产精品久久| 欧美最猛黑人xxxx黑人猛叫黄| 亚洲欧洲三级| 伊人久久综合97精品| 欧美福利电影网| 欧美日韩国产探花| 日韩精品一区二区三区在线视频| 亚洲精品中文字幕在线播放| 99热自拍偷拍| 美女爽到呻吟久久久久| 亚洲成av人片在线观看www| 99国产成人精品| 影音先锋久久| 久久99精品久久久久久青青91| 中文字幕一区二区三区四区视频| 精品一区2区三区| 久久精品99北条麻妃| 国产精品国产三级国产aⅴ无密码| 国产污视频在线看| 国产精品国产三级在线观看| 亚洲麻豆国产自偷在线| 亚洲欧美激情在线观看| 看成年女人免费午夜视频| 激情婷婷综合网| 最近中文在线观看| 国产天堂在线| 日韩在线欧美在线| 成人综合日日夜夜| 色综合一个色综合亚洲| 久久精品国产99国产精品澳门| 亚洲激情第一页| 最新中文字幕在线观看| 日韩的一区二区| 在线播放一区| 欧美一区二区三区在线观看免费| 免费观看亚洲视频大全| 日韩黄色在线视频| 国产一区导航| 亚洲熟妇国产熟妇肥婆| 欧美毛片免费观看| 欧美性生活大片免费观看网址| 日韩有码片在线观看| 精品国内亚洲2022精品成人| 日韩在线小视频| 成人激情诱惑| 综合网中文字幕| 另类少妇人与禽zozz0性伦| 亚洲国产精品网站| 国产男男gay网站| 国产羞羞视频在线观看| 最新国产の精品合集bt伙计| 中国女人真人一级毛片| 国产又黄又粗视频| 成人黄色av免费在线观看| 污视频网站在线| lutube成人福利在线观看| 欧美精品亚洲二区| 1069男同网址| 国产激情在线看| 99免费在线观看| 亚洲一区二区三区高清不卡| 成人18视频在线观看| 国产欧美亚洲精品a| 久久青青草原亚洲av无码麻豆| 久久成人羞羞网站| 欧美一级片在线免费观看| av一区二区三区在线| 中文字幕人妻一区二区三区视频| 青青草原成人在线视频| 久久久精品中文字幕| 美女精品一区最新中文字幕一区二区三区| 手机在线免费观看毛片| 精品毛片网大全| 欧美欧美一区二区| 免费成人在线观看| 亚洲成av人**亚洲成av**| 日韩精品久久久久久久酒店| 樱桃视频在线观看一区| 国产麻豆精品theporn| 99久久国产免费看| 亚洲一卡二卡三卡四卡无卡久久| 乱一区二区av| 欧美中文字幕一区二区三区亚洲| 亚洲成人福利片| 亚洲永久激情精品| 在线亚洲人成| 亚洲视频 中文字幕| 精品美女www爽爽爽视频| 久久精品国产99久久6| 91麻豆国产福利在线观看宅福利| 四虎国产精品永久免费观看视频| 麻豆精品一区二区av白丝在线| 91精品国产福利在线观看| 久久精品国产色蜜蜜麻豆| 午夜精品视频在线观看一区二区| 国产喂奶挤奶一区二区三区| 人与牲动交xxxbbb| 国产av精国产传媒| 免费网站免费进入在线| 亚洲国产资源| 日韩午夜av电影| 久久久精品人妻一区二区三区四| 亚洲91在线| 日本三级视频在线| 性久久久久久久久久| 亚洲黄色在线视频| 国产精品传媒毛片三区| av免费观看久久| 99热国产在线| 九九热这里有精品| 国产一区二区三区久久久| 蜜桃在线一区二区三区精品| 久久午夜夜伦鲁鲁片| 欧洲精品亚洲精品| 国产黄a三级三级三级| www.激情| 亚洲xxx大片| 91亚洲精品在线观看| 一区二区三区不卡在线视频| 日韩少妇内射免费播放18禁裸乳| 91久久高清国语自产拍| 极品一区美女高清| 欧美一级二级三级乱码| 亚洲av成人精品日韩在线播放| 中文字幕三区| 麻豆精品不卡国产免费看| 欧美一乱一性一交一视频| 日产乱码一卡二卡三免费| 欧美 国产 综合| 国产精品久久久久久久小唯西川| 在线日韩av永久免费观看| 热久久久久久久| av文字幕在线观看| 激情五月婷婷综合网| 亚洲第一黄色网| 久久精品国产69国产精品亚洲| 澳门黄色一级片| 先锋影音av中文资源| 91在线精品秘密一区二区| 性生交生活影碟片| 久久亚洲欧洲| 99re66热这里只有精品3直播| 性色国产成人久久久精品| 男人在线资源站| 国产精品国产三级国产专区51| 成人免费黄色小视频| 五月婷婷丁香在线| 国产在线麻豆精品观看| 爱爱网站免费| 欧美18xxxx| 国产伦精品一区二区三区免费迷| 99精品女人在线观看免费视频| 久久精品av麻豆的观看方式| 国产99久久久国产精品潘金| 国产亚洲一区在线播放| 精品人妻无码一区二区三区| 亚洲小说区图片区都市| 中文字幕av不卡在线| 九色在线播放| 白白操在线视频| 欧美女优在线视频| 日本成人一级片| 欧美刺激午夜性久久久久久久| 老司机成人免费视频| 国产又黄又大又粗视频| 日韩国产成人无码av毛片| 成年人三级视频| 日韩一区二区精品在线观看| 久久久久88色偷偷免费| 欧美美女视频在线观看| 免费视频拗女稀缺一区二区| 国产成人久久精品| 国产稀缺真实呦乱在线| 国产性猛交xxxx免费看久久| 精品处破女学生| 久久99国产精品久久99小说| 99久久99九九99九九九| 国产一区亚洲| 在线免费观看日本欧美爱情大片| 91久久久久久久久久久久| 精品一区二区三区在线视频| 欧美优质美女网站| 成人香蕉视频| 亚洲欧美日本在线观看| 亚洲成人不卡| 欧美特级特黄aaaaaa在线看| 成在在线免费视频| 开心婷婷激情| 日韩美女啊v在线免费观看| 成人激情电影在线看| 亚洲九九精品| 91亚洲午夜精品久久久久久| 欧美交受高潮1| 大美女一区二区三区| 亚洲影视九九影院在线观看| 91免费看片在线| 欧美日韩在线国产| 国产视频手机在线播放| 午夜精品免费| 色女人在线视频| 日韩av在线天堂网| 性欧美18~19sex高清播放| 国产农村妇女精品一区二区| 色综合久久久久久| 激情五月***国产精品| 嫩草影院一区二区| 99久久精品久久久久久清纯| 成人在线视频你懂的| 国产日韩欧美自拍| 国产欧美一区二区三区精品酒店| 亚洲美女尤物影院| 亚洲精品日日夜夜| 婷婷色在线播放| 国产一区二区三区日韩欧美| 国产+成+人+亚洲欧洲| 午夜电影久久久| 欧美日本一区二区视频在线观看| 无遮挡亚洲一区| 日韩.欧美.亚洲| 第一视频专区在线| 免费看成年人视频| 欧美日韩一区二区国产| 亚洲韩国精品一区| 亚洲一区二区日本| 中日韩免费毛片| 国产艳俗歌舞表演hd| 福利片在线看| 亚洲一区二区av| 国产一区二区三区av在线| 精品在线视频免费观看| 亚洲色图第三页| caoporn97在线视频| 最近最好的中文字幕2019免费| 国产综合久久久久久鬼色| 97在线影院| 午夜伦理在线视频| 久久精品国产精品| 国产精品天天看| 中文字幕在线网站| 欧美日韩一区在线播放| 美女扒开尿口让男人操| 91精品国产综合久久国产大片| 欧美亚洲天堂| 日韩视频一区二区三区在线播放| 围产精品久久久久久久| 日韩美女毛茸茸| 日韩中文字幕一区| 超碰在线caoporen| 日韩视频永久免费| 视频一区二区三区不卡| 粉嫩av一区二区三区免费观看| 国产精品你懂的| 在线国产欧美| 在线电影国产精品| 成人av网站观看| 五月婷婷亚洲综合| 亚洲影视一区二区三区| 天天爽夜夜爽夜夜爽精品视频| 精品国产一区二区三区久久影院| 91av资源在线| 久久人人97超碰国产公开结果| 91九色网站| 91麻豆一二三四在线| 亚洲大片在线观看| 成人免费毛片高清视频| 色综合婷婷久久| 亚洲欧美综合7777色婷婷| 美女扒开尿口让男人操亚洲视频网站| 超碰在线公开免费| 蜜桃传媒在线观看免费进入| 日韩av资源在线播放| 日本精品福利视频| 亚洲人与黑人屁股眼交| 老女人性生活视频| 久久婷婷综合激情| 久久精品久久久久久久| 亚洲乱码国产乱码精品精的特点| 欧美日本一道本| 免费精品国产自产拍在| 免费人成又黄又爽又色| 国产成人精品久久二区二区| 777午夜精品免费视频|