0

これにアプローチする方法がわからない..私は大量の温度データを取得する必要があります..隔週でそれらを平均する必要があります..私はピボットチャートで遊んだことがあり、毎週の平均しか返すことができません..

Table:TempData

SITE  Date  Temperature_C
JON   6/4/2001 28
JON   6/4/2001 29
JON   6/4/2001 26
JON   6/5/2001 24
JON   6/5/2001 27

等..

すべての日付を特定の ID に分割するクエリを作成できます。1 ~ 100 のように、各値は 2001 年 6 月 4 日からの 2 週間の平均を表します。次に、ピボット チャートをそのように操作します。もちろん、膨大な数の日付を AVG する必要があります (多くの場合、記録された値の量が異なります。4 つのレコードがある日もあれば、40 のレコードがある日もあります)。日付に基づいて連続シリーズを検索するために使用できるコード..Datesub()? 私は途方に暮れています。

4

2 に答える 2

0

アイデアは、ある開始日からの日数を取り、14 で割ることです。SQL Server 構文を使用した例を次に示します。

select datediff(day, cast('2012-01-01' as date), [date])/14 as weeknumber,
       min([date]) as weekstart,
       max([date]) as weekend,
       avg(Temperature_C*1.0) as avg_temp
from TempData
group by datediff(day, cast('2012-01-01' as date), [date])/14 
order by 1

他のデータベースでは、ロジックは似ていますが、特定の機能は異なります。

ちなみに、2012 年 1 月 1 日は日曜日だったので、これは日曜日から土曜日までの週になります (これは通常妥当です)。

于 2012-08-15T13:34:08.477 に答える