[前][次][番号順一覧][スレッド一覧]

mysql:8615

From: "Kawaji, Shinya" <"Kawaji, Shinya" <kawaji@xxxxxxxxxx>>
Date: Fri, 16 Jan 2004 00:29:29 +0900
Subject: [mysql 08615] Re: 累積値を求めたいのですが

かわじ、です。


> 項目   値		累積値
> 10		5		5
> 20		10		15
> 30		20		35
> 
> のように、値の累積値を各レコードに書き込みたいのですが、何かいい
> アイディアはないでしょうか?。

別解です。MySQL 3.23.58 にて。

ポイントは以下の通りです。

 * 同じテーブルを結合していること
 * 「項目」の数値がダブると、おそらく期待通りの結果にはならないこと
   (ダブらないことが必要)


mysql> create table s (k int, v int);
Query OK, 0 rows affected (0.00 sec)

mysql> insert s values(10, 5),(20,10),(30,20);
Query OK, 3 rows affected (0.01 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> select * from s order by k;
+------+------+
| k    | v    |
+------+------+
|   10 |    5 |
|   20 |   10 |
|   30 |   20 |
+------+------+
3 rows in set (0.00 sec)

mysql> select a.k, a.v, sum(b.v) from s a, s b where a.k >= b.k group by a.k;
+------+------+----------+
| k    | v    | sum(b.v) |
+------+------+----------+
|   10 |    5 |        5 |
|   20 |   10 |       15 |
|   30 |   20 |       35 |
+------+------+----------+
3 rows in set (0.01 sec)



[前][次][番号順一覧][スレッド一覧]

      8613 2004-01-15 23:35 [TORU NOMURA <toru200] 累積値を求めたいのですが                
      8614 2004-01-15 23:49 ┣[とみたまさひろ <tomm]                                       
      8620 2004-01-16 22:30 ┃┗[TORU NOMURA <toru200]                                     
->    8615 2004-01-16 00:29 ┗["Kawaji, Shinya" <ka]