ホームページ >データベース >mysql チュートリアル >MySQLで累積合計列を作成するにはどうすればよいですか?
MySQL で累積合計列を作成するには、変数を作成し、値を 0 に設定する必要があります。累積合計は、現在の値から次の値まで増加します。
まず、SET を使用して変数を作成する必要があります。構文は次のとおりです -
set @anyVariableName:= 0;
MySQL で累積合計カラムを作成するための構文は次のとおりです -
select yourColumnName1,yourColumnName2,........N,(@anyVariableName := @anyVariableName + yourColumnName2) as anyVariableName from yourTableName order by yourColumnName1;
上記の概念を理解するために、テーブルを作成してみましょう。以下は、テーブルを作成するクエリです。 -
mysql> create table CumulativeSumDemo −> ( −> BookId int, −> BookPrice int −> ); Query OK, 0 rows affected (0.67 sec)
select ステートメントを使用して、いくつかのレコードをテーブルに挿入します。レコードを挿入するクエリは次のとおりです。
mysql> insert into CumulativeSumDemo values(101,400); Query OK, 1 row affected (0.15 sec) mysql> insert into CumulativeSumDemo values(102,500); Query OK, 1 row affected (0.16 sec) mysql> insert into CumulativeSumDemo values(103,600); Query OK, 1 row affected (0.16 sec) mysql> insert into CumulativeSumDemo values(104,1000); Query OK, 1 row affected (0.18 sec)
は、insert コマンドを使用して挿入したすべてのレコードを表示します。クエリは次のとおりです -
mysql> select *from CumulativeSumDemo;
出力は次のとおりです -
+--------+-----------+ | BookId | BookPrice | +--------+-----------+ | 101 | 400 | | 102 | 500 | | 103 | 600 | | 104 | 1000 | +--------+-----------+ 4 rows in set (0.00 sec)
累積合計列を追加するには、まず変数を作成する必要があります。クエリは次のとおりです。 -
mysql> set @CumulativeSum := 0; Query OK, 0 rows affected (0.00 sec)
冒頭で説明した上記の構文を実装して、累積合計列を追加します。クエリは次のとおりです -
mysql> select BookId,BookPrice,(@CumulativeSum := @CumulativeSum + BookPrice) as CumSum −> from CumulativeSumDemo order by BookId;
以下は出力です。累積合計列もここに表示されます -
+--------+-----------+--------+ | BookId | BookPrice | CumSum | +--------+-----------+--------+ | 101 | 400 | 400 | | 102 | 500 | 900 | | 103 | 600 | 1500 | | 104 | 1000 | 2500 | +--------+-----------+--------+ 4 rows in set (0.00 sec)
以上がMySQLで累積合計列を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。