2

1 分あたりの合計ビット数を検出し、group byステートメントを使用してそれらをグループ化するデータベースがあります。同じステートメントを使用して、2分ごとgroup byにグループ化して合計するにはどうすればよいですか?totalBits

これは、1 分ごとにグループ化するための一連のクエリです。

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

前もって感謝します!

4

2 に答える 2

1

分を抽出する方法を変更して、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 
于 2013-02-18T08:02:55.483 に答える
-1

グループ化する必要がMINUTE - MOD(MINUTE,2)あります(したがって、現在選択している列の代わりにそれを選択してください)。

于 2013-02-18T08:01:47.630 に答える