1

これは、MySQL で集計テーブルを作成する方法ですが、MS SQL 2008 で同じことを行うにはどうすればよいですか?

アイデアは、日付のみ (時間ではない) を含み、1 日あたりの各メーターの kWh を合計した要約テーブルを作成することです。

CREATE table summary 
SELECT meterID, date( DateTime ) AS date, sum( kWh ) AS kWh
FROM data GROUP BY meterID, date;"
4

1 に答える 1

2

テーブルの作成に関しては、質問は正確なデータ型を指定していません。たとえば、kWh は int のみであるか、小数部分がある場合があります。でも、勝手に推測するとこんな感じ。

CREATE Table summary
(
 meterID int,
 YourDate date,
 kWh int /* or maybe a decimal(9,2) or something like that */
)

あとは mysql にかなり近いもので、変換を行うためにCastを交換するだけです。convertを使用することもできますが、私は常に Cast の構文の方が好きです。

INSERT INTO summary (meterID, YourDate, kWh) 
(SELECT meterID, Cast(YourDateTime AS Date) AS YourDate, sum( kWh ) AS kWh
FROM data GROUP BY meterID, Cast(YourDateTime AS Date));
于 2012-12-13T04:52:58.357 に答える