teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

コードの間違いの修正

2018/03/10 02:24

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -7,9 +7,9 @@
7
7
  t1.*,
8
8
  (SELECT Sum(t2.売上高) from 売上テーブル as t2
9
9
  WHERE
10
- t1.年月日 = t2.年月日 AND t1.商品列 = t1.商品列
10
+ t1.年月日 = t2.年月日 AND t1.商品列 = t2.商品列
11
11
  AND t2.[年月日 時刻] <= t1.[年月日 時刻]) AS 累計
12
12
  FROM 売上テーブル AS t1;
13
13
  ```
14
14
 
15
- [年月日]、[商品列]が同じで、自分の[年月日 時刻]より前の[売上高]の合計を求める。
15
+ [年月日]、[商品列]が同じで、自分の[年月日 時刻]前の[売上高]の合計を求める。

2

回答の修正

2018/03/10 02:24

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -1,5 +1,15 @@
1
- データ例では、商品ドは連番になってますが、実際のデータも連番が保障されてるのです連番とはかぎらないなら、かなり複雑かつ重いSQLになります。
1
+ 年月日 、商品列でグルプ化した累計とうことです
2
2
 
3
- 累計をクエリ取得する必要はありますか。レポートなら比較的簡単に取得できますが、それではだめですか。
3
+ 下記のSQLいい
4
4
 
5
+ ```SQL
6
+ SELECT
7
+ t1.*,
8
+ (SELECT Sum(t2.売上高) from 売上テーブル as t2
9
+ WHERE
10
+ t1.年月日 = t2.年月日 AND t1.商品列 = t1.商品列
11
+ AND t2.[年月日 時刻] <= t1.[年月日 時刻]) AS 累計
12
+ FROM 売上テーブル AS t1;
13
+ ```
14
+
5
- ~~また、商品列毎の累計はなく途中に別商品列がはいると累計がリセットされるという仕様もどのような意味があるのか疑問です。~~[年月日]が変わったら累計がリセットされる(商品列毎、日付毎)ということでしょうか
15
+ [年月日][商品列]が同じで、自分の[年月日 時刻]より前[売上高]の合を求める

1

回答の修正

2018/03/10 01:44

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  累計をクエリで取得する必要はありますか。レポートなら比較的簡単に取得できますが、それではだめですか。
4
4
 
5
- また、商品列毎の累計ではなく、途中に別の商品列がはいると累計がリセットされるという仕様もどのような意味があるのか疑問です。
5
+ ~~また、商品列毎の累計ではなく、途中に別の商品列がはいると累計がリセットされるという仕様もどのような意味があるのか疑問です。~~[年月日]が変わったら累計がリセットされる(商品列毎、日付毎の累計)ということでしょうか。