要在MySQL中創(chuàng)建累積和列,您需要創(chuàng)建一個變量并將值設(shè)置為0。累積和會以當(dāng)前值逐步遞增下一個值。
首先,您需要在 SET 的幫助下創(chuàng)建一個變量。語法如下 –
set @anyVariableName:= 0;
登錄后復(fù)制
在 MySQL 中創(chuàng)建累積和列的語法如下 –
select yourColumnName1,yourColumnName2,........N,(@anyVariableName := @anyVariableName + yourColumnName2) as anyVariableName from yourTableName order by yourColumnName1;
登錄后復(fù)制
為了理解上述概念,讓我們創(chuàng)建一個表。以下是創(chuàng)建表的查詢 –
mysql> create table CumulativeSumDemo −> ( −> BookId int, −> BookPrice int −> ); Query OK, 0 rows affected (0.67 sec)
登錄后復(fù)制
借助select語句向表中插入一些記錄。插入記錄的查詢?nèi)缦?–
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)
登錄后復(fù)制
顯示我借助插入命令插入的所有記錄。查詢?nèi)缦?–
mysql> select *from CumulativeSumDemo;
登錄后復(fù)制
以下是輸出 –
+--------+-----------+ | BookId | BookPrice | +--------+-----------+ | 101 | 400 | | 102 | 500 | | 103 | 600 | | 104 | 1000 | +--------+-----------+ 4 rows in set (0.00 sec)
登錄后復(fù)制
要添加累積和列,首先需要創(chuàng)建一個變量。查詢?nèi)缦?–
mysql> set @CumulativeSum := 0; Query OK, 0 rows affected (0.00 sec)
登錄后復(fù)制
實現(xiàn)開頭討論的上述語法來添加累積和列。查詢?nèi)缦?–
mysql> select BookId,BookPrice,(@CumulativeSum := @CumulativeSum + BookPrice) as CumSum −> from CumulativeSumDemo order by BookId;
登錄后復(fù)制
以下是輸出。這里累積總和列也可見 –
+--------+-----------+--------+ | BookId | BookPrice | CumSum | +--------+-----------+--------+ | 101 | 400 | 400 | | 102 | 500 | 900 | | 103 | 600 | 1500 | | 104 | 1000 | 2500 | +--------+-----------+--------+ 4 rows in set (0.00 sec)
登錄后復(fù)制
以上就是如何在 MySQL 中創(chuàng)建累積和列?的詳細(xì)內(nèi)容,更多請關(guān)注www.92cms.cn其它相關(guān)文章!