[英]Grouping Data every 2 minutes using group by
我有一個數據庫,該數據庫查找每分鍾的位數,並使用group by
語句對它們進行group by
。 我想知道,如何使用相同的group by
語句對每2分鍾的totalBits
進行分組和求和?
這是我每分鍾要分組的一組查詢
SELECT SUM(totalBits ) AS totalBits,
EXTRACT( YEAR FROM timeStampID ) AS YEAR,
EXTRACT( MONTH FROM timeStampID ) AS MONTH ,
EXTRACT( DAY FROM timeStampID ) AS DAY ,
EXTRACT( HOUR FROM timeStampID ) AS HOUR ,
EXTRACT( MINUTE FROM timeStampID ) AS MINUTE ,
EXTRACT( SECOND FROM timeStampID ) AS SECOND FROM `ipByteReceive1`
WHERE `timeStampID` > '2013-01-21 08:58:55'
GROUP BY YEAR, MONTH , DAY , HOUR, MINUTE
這就是我得到的:
totalBits | YEAR | MONTH | DAY | HOUR | MINUTE
----------+------+-------+-----+------+--------
459 | 2013 | 1 | 21 | 8 | 58
2 | 2013 | 1 | 21 | 8 | 59
17 | 2013 | 1 | 21 | 9 | 00
這就是我想要得到的:
totalBits | YEAR | MONTH | DAY | HOUR | MINUTE
----------+------+-------+-----+------+--------
461 | 2013 | 1 | 21 | 8 | 58
17 | 2013 | 1 | 21 | 9 | 00
提前致謝!
只需更改您提取分鍾的方式,使其也按2進行分組,然后放第二秒(因為它將不再意味着任何內容)。
SELECT SUM(totalBits ) AS totalBits,
EXTRACT( YEAR FROM timeStampID ) AS YEAR,
EXTRACT( MONTH FROM timeStampID ) AS MONTH ,
EXTRACT( DAY FROM timeStampID ) AS DAY ,
EXTRACT( HOUR FROM timeStampID ) AS HOUR ,
EXTRACT( MINUTE FROM timeStampID ) - MOD(EXTRACT( MINUTE FROM timeStampID ), 2) AS MINUTE ,
WHERE `timeStampID` > '2013-01-21 08:58:55'
GROUP BY YEAR, MONTH , DAY , HOUR, MINUTE
您應該按MINUTE - MOD(MINUTE,2)
分組(因此,請選擇該行而不是當前選擇的列)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.