Untuk mencipta lajur jumlah kumulatif dalam MySQL, anda perlu mencipta pembolehubah dan tetapkan nilai kepada 0. Jumlah terkumpul meningkat daripada nilai semasa ke nilai seterusnya.
Pertama sekali, anda perlu mencipta pembolehubah dengan bantuan SET. Sintaksnya adalah seperti berikut -
set @anyVariableName:= 0;
Sintaks untuk mencipta lajur jumlah kumulatif dalam MySQL adalah seperti berikut -
select yourColumnName1,yourColumnName2,........N,(@anyVariableName := @anyVariableName + yourColumnName2) as anyVariableName from yourTableName order by yourColumnName1;
Untuk memahami konsep di atas, mari kita cipta jadual. Berikut ialah pertanyaan untuk mencipta jadual -
mysql> create table CumulativeSumDemo −> ( −> BookId int, −> BookPrice int −> ); Query OK, 0 rows affected (0.67 sec)
Masukkan beberapa rekod ke dalam jadual dengan bantuan pernyataan pilih. Pertanyaan untuk memasukkan rekod adalah seperti berikut -
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)
memaparkan semua rekod yang telah saya masukkan dengan bantuan arahan sisip. Pertanyaannya adalah seperti berikut -
mysql> select *from CumulativeSumDemo;
Berikut ialah output -
+--------+-----------+ | BookId | BookPrice | +--------+-----------+ | 101 | 400 | | 102 | 500 | | 103 | 600 | | 104 | 1000 | +--------+-----------+ 4 rows in set (0.00 sec)
Untuk menambah lajur jumlah kumulatif, anda perlu mencipta pembolehubah terlebih dahulu. Pertanyaannya adalah seperti berikut -
mysql> set @CumulativeSum := 0; Query OK, 0 rows affected (0.00 sec)
Laksanakan sintaks di atas yang dibincangkan pada permulaan untuk menambah lajur jumlah kumulatif. Pertanyaannya adalah seperti berikut -
mysql> select BookId,BookPrice,(@CumulativeSum := @CumulativeSum + BookPrice) as CumSum −> from CumulativeSumDemo order by BookId;
Berikut ialah output. Lajur jumlah kumulatif juga boleh dilihat di sini -
+--------+-----------+--------+ | BookId | BookPrice | CumSum | +--------+-----------+--------+ | 101 | 400 | 400 | | 102 | 500 | 900 | | 103 | 600 | 1500 | | 104 | 1000 | 2500 | +--------+-----------+--------+ 4 rows in set (0.00 sec)
Atas ialah kandungan terperinci Bagaimana untuk membuat lajur jumlah kumulatif dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!