Date: Sun, 5 Oct 2003 10:06:22 +0900
From: "スーパーキタムラ" <who@sub.example.com>
初めてメールいたします。
北村と申します。ACCESS2000+MSDEで使っていますが
日別の売上累計を出したい場合、どの様にすればいいのかわからず悩んでいます。
まず、以下のようなテーブルがあります。
/*テーブル作成*/
CREATE TABLE TBL1
(
日付 datetime not null,
部門番号 int not null,
前年売上 int,
本年売上 int
)
go
/*PRIMARY KEY作成*/
alter table TBL1
add constraint TBL1K01 PRIMARY KEY
(
日付,
部門番号
)
go
/*インデックスを設定*/
create index TBL1K02
on TBL1 (
日付,
部門番号
)
データは以下のとおりです。
日付 部門番号 前年売上 本年売上
---------- ----------- ----------- -----------
2003/09/01 101 4502 593859
2003/09/02 101 4805 550310
2003/09/03 101 3977 505484
2003/09/04 101 5901 586008
2003/09/05 101 5381 599100
2003/09/01 102 1133 242235
2003/09/02 102 943 213608
2003/09/03 102 1099 234484
2003/09/04 102 1051 220961
2003/09/05 102 1464 257048
2003/09/01 201 1178 416973
2003/09/02 201 1016 363469
2003/09/03 201 1090 358116
2003/09/04 201 1318 453938
2003/09/05 201 1117 412174
2003/09/01 202 319 98959
2003/09/02 202 270 84186
2003/09/03 202 276 85115
2003/09/04 202 351 99668
2003/09/05 202 268 74761
このデータを以下のように表現するにはどうしたいいでしょうか?
日付 部門番号 前年売上 本年売上 前年累計 本年累計
------ ----------- -------- ------- ------ -----------
2003/9/1 101 4502 593859 4502 593859
2003/9/2 101 4805 550310 9307 1144169
2003/9/3 101 3977 505484 13284 1649653
2003/9/4 101 5901 586008 19185 2235661
2003/9/5 101 5381 599100 24566 2834761
2003/9/1 102 1133 242235 1133 242235
2003/9/2 102 943 213608 2076 455843
2003/9/3 102 1099 234484 3175 690327
2003/9/4 102 1051 220961 4226 911288
2003/9/5 102 1464 257048 5690 1168336
・・・以下つづく・・・・
(エクセルで集計したのを貼り付けました。)
ACCESSフォーム上でDSUM関数「 =DSum("売上金額","T_Bumon",
"日付 between '2003/9/1' and '" & [日付] & "' and 部門番号 ="
& [部門番号])」を使えば表現できるのですがSQLを使った
表現というのは可能なのでしょうか?
また、これがSQLで表現できたとしてさらに日別に[本年累計]/[前年累計]を
表現したい場合はどのようにすればいいのでしょうか?
(未来の日付については本年売上が0になります。)
よろしくお願いします。
[MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
よろしければお困りの内容を、電子メールで教えて下さい。 |
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|