2016-09-20 79 views
-2

例如,如果我有一個通過櫃檯完成的事務數據庫表。我想搜索是否有任何時間被定義爲非常繁忙(在10分鐘內處理超過10筆交易)。我將如何去查詢它?我可以根據時間範圍進行彙總,並計算這些範圍內的交易ID數量嗎?在postgresql中,你如何找到基於時間範圍的聚合數據庫

+1

顯示一些示例數據和您期望的結果?請閱讀[** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t這裏是[** START **](http ://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/),瞭解如何提高您的問題質量並獲得更好的答案。 –

回答

0

如何:

SELECT time, 
FROM (
    SELECT count(*) AS c, min(time) AS time 
    FROM transactions 
    GROUP BY floor(extract(epoch from time)/600); 
) 
WHERE c > 10; 

這會發現所有十個分鐘爲間隔針對該區間內發生十餘交易。它假設該表名爲transactions,並且它有一個名爲time的列,其中存儲了時間戳。