1

日ごとの列の標準偏差を見つけるためのクエリが必要です。私のテーブルには、10分ごとのタイムスタンプを持つ約30,000行があります。タイムスタンプとTFの列を持つ以下のサンプルデータを見つけてください。残りの列の偏差も取得する必要があります

Timestamp                  TF
2012-05-17 19:15:35.000    10
2012-05-17 19:25:35.000    10
2012-05-17 19:35:35.000    10
2012-05-17 19:45:35.000    10
2012-05-17 19:55:35.000    10
2012-05-17 20:05:35.000    10
2012-05-17 20:15:35.000    10
2012-05-17 20:26:46.000    10
2012-05-18 00:06:48.000    10
2012-05-18 00:16:48.000    10
2012-05-18 00:26:48.000    10
2012-05-18 00:36:48.000    10
2012-05-18 00:46:48.000    10
2012-05-18 00:56:48.000    10
2012-05-18 01:06:48.000    10
2012-05-18 01:16:48.000    10
2012-05-18 01:26:48.000    10
2012-05-18 01:36:49.000    10

として出力する必要があります

Timestamp        TF
2012-05-17     0
2012-05-18       0
---             --
---             --
---             --
---             --

助けてください!!前もって感謝します!!

何か案は?

4

1 に答える 1

1

編集:私は転置DAYし、DATEDAY月の日を返します。DATE日に切り捨てられた時刻を返します。回答が更新され、その修正が含まれます。

日ごとにグループ化した集計関数を使用する必要があります。

SELECT DATE(Timestamp), STDDEV(TV) FROM MyTable GROUP BY DATE(Timestamp);

機能があると思いDATE()ます。

機能がない場合がありSTDDEVます。がない場合はSTDDEV(x)=SQRT(AVG((x-AVG(x))^2)、結合されたサブクエリとして実装する必要があります。

SELECT DATE(Timestamp), SQRT(AVG((a.TF-b.mean)*(a.TF-b.mean)) FROM MyTable a LEFT JOIN
    (SELECT DATE(Timestamp) day, AVG(TF) mean FROM MyTable GROUP BY DATE(Timestamp)) b
        ON DATE(a.Timestamp)=b.day 
    GROUP BY b.day;
于 2012-12-17T05:31:08.753 に答える