在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python  數(shù)據(jù)庫/ Mongodb怎么快速查詢多個collection的數(shù)據(jù),并把集合按時間順序排序

Mongodb怎么快速查詢多個collection的數(shù)據(jù),并把集合按時間順序排序?

我查詢單個collection用:

flt = {'datetime': {'$gte': datetime(2017,12,12)}}
dbCusor = collection.find(flt).sort('datetime') 

現(xiàn)在要查詢多個collection的這一時間段的數(shù)據(jù),并把這些數(shù)據(jù)按時間順序放到一起,

怎么辦,只能遍歷比較再放數(shù)組里了嗎?

回答
編輯回答
浪婳

先問一個問題,如果放在關(guān)系數(shù)據(jù)庫,這個需求你準(zhǔn)備怎么做?先UNIONORDER BY?做是能做到,但是是一個無法使用索引的內(nèi)存排序,效率可想而知。
如果從效率出發(fā)(沒有說明,所以并不知道效率是不是你的第一關(guān)注點),這些數(shù)據(jù)既然是要放在一起排序的,說明它們有一定的內(nèi)在聯(lián)系,那么為什么不把它們放在一個集合里?MongoDB的無模式設(shè)計是支持你這樣做的,并且在合適的場景下也建議這樣做。不過這里也沒提到實際的場景,所以無法進(jìn)一步分析。

2018年6月27日 10:34