SELECT*FROMemployee_tbl;+------+------+----- -- -----+--------------------+|id |nama|tarikh_kerja |halaman_penaipan_harian|+------+---- -- +----------------+"/> SELECT*FROMemployee_tbl;+------+------+----- -- -----+--------------------+|id |nama|tarikh_kerja |halaman_penaipan_harian|+------+---- -- +----------------+">
Rumah > Artikel > pangkalan data > Bagaimanakah kita boleh menggunakan fungsi MySQL SUM() untuk mengira jumlah nilai yang berbeza dalam lajur?
Untuk mengira jumlah nilai berbeza dalam lajur, kita boleh menggunakan kata kunci "DISTINCT" dan nama lajur. Untuk memahami fungsi SUM() untuk nilai yang berbeza, pertimbangkan jadual "employee_tbl" yang mempunyai rekod berikut -
mysql> SELECT * FROM employee_tbl; +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 1 | John | 2007-01-24 | 250 | | 2 | Ram | 2007-05-27 | 220 | | 3 | Jack | 2007-05-06 | 170 | | 3 | Jack | 2007-04-06 | 100 | | 4 | Jill | 2007-04-06 | 220 | | 5 | Zara | 2007-06-06 | 300 | | 5 | Zara | 2007-02-06 | 350 | +------+------+------------+--------------------+ 7 rows in set (0.00 sec)
Sekarang, dengan mengandaikan mengikut jadual di atas anda ingin mengira jumlah semua dialy_typing_pages dengan nilai yang berbeza, maka anda boleh gunakan Perintah berikut telah dilakukan -
mysql> SELECT SUM(DISTINCT daily_typing_pages) -> FROM employee_tbl; +-------------------------+ | SUM(daily_typing_pages) | +-------------------------+ | 1390 | +-------------------------+ 1 row in set (0.00 sec)
Set keputusan di atas menunjukkan bahawa MySQL SUM() dengan kata kunci DISTINCT hanya mengira jumlah rekod yang berbeza, iaitu hanya menambah nilai "220" sekali.
Atas ialah kandungan terperinci Bagaimanakah kita boleh menggunakan fungsi MySQL SUM() untuk mengira jumlah nilai yang berbeza dalam lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!