5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
Tutorial Web Development…
About
Contact
Home » MySQL Tutorial » Menggunakan SUM IF untuk menjumlahkan nilai field/kolom
Follow
Like
suatu Tabel pada MySQL
Ikuti
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL
Dapatkan update artikel terbaru via E-Mail Nama Lengkap
Oleh: agusph | Kategori: MySQL Tutorial | Update: 11-12-2015
Email
Pada kesempatan kali ini dan beberapa contoh dalam artikel berikutnya kita akan Langganan
membahas berbagai fungsi yang disediakan oleh database MySQL. Untuk itu sebelumnya kita buat beberapa tabel yang diperlukan. Skema tabel dan relasi tabel adalah sebagai berikut:
Kategori Code Editor CSS Tutorial jQuery Tutorial Lainnya MySQL Tutorial Optimasi Web PHP Tutorial phpMyAdmin Uncategorized Web Hosting Wordpress XAMPP Tutorial
Artikel Pilihan Character Set dan Collation Pada MySQL – Yakin Sudah Paham?
Diagram ERD pada database penjualan Artikel ini hanya khusus membahas penjumlahan pada kolom tertentu dalam suatu
Membuat 15 Efek Social Media Button Dengan CSS Part I
tabel dengan syarat suatu kondisi terpenuhi. Tabel yang kita perlukan hanya tabel tunai yang dalam hal ini merupakan contoh tabel untuk penjualan tunai.
Memahami GET dan POST Pada PHP dan HTTP
Penjelasan field: id_pelanggan dan id_cabang merupakan merupakan nomor seri pelanggan.
Memahami Character Set dan Character Encoding
kd_produk merupakan kode jenis produk misal: 111 untuk TV, 112 untuk Kulkas, 113 untuk VCD/DVD player, 115 untuk laptop. kd_item merupakan deskripsi dari produk misal 0132AV550, dua digit pertama
Memahami Session Pada PHP dan Penggunaannya
merupakan merk (01 untuk Toshiba, karakter berikutnya (32AV550) merupakan nomor seri produk. tgl_byr merupakan tanggal pembayaran dengan format yyyy-mm-dd. jml_byr merupakan jumlah pembayaran.
query SQL yang digunakan untuk membuat tabel berikut contentnya:
http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
Recent 1
Random Comment
Mengaktifkan Kompresi
1/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev Mengaktifkan Kompresi 1
query SQL yang digunakan untuk membuat tabel berikut contentnya: 1
CREATE TABLE IF NOT EXISTS `tunai` (
2
`id_pelanggan` varchar(50) DEFAULT NULL,
3
`id_cabang` varchar(50) DEFAULT NULL,
4 5
`kd_produk` varchar(50) DEFAULT NULL, `kd_item` varchar(20) DEFAULT NULL,
6
`tgl_byr` varchar(50) DEFAULT NULL,
7 8
`jml_byr` int(11) DEFAULT NULL, KEY `id_pelanggan` (`id_pelanggan`,`id_cabang`)
9
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Gzip Untuk Mempercepat
SQL
Website 2
Untuk Mempercepat Load Website 3
2 3
Cara Terbaru Menghubungkan MySQL Dengan PHP – MySQLi dan PDO
query untuk content: 1
Setting HTTP Cache
4temFitur Penting Notepad++ SQL INSERT INTO `tunai` (`id_pelanggan`, `id_cabang`, `kd_produk` , `kd_i Yang Perlu Anda Ketahui ('020011', '05', '111', '01L17LEDW', '20110202', 1500000), ('020011', '05', '112', '01G150L', '20110310', 1250000),
4
('020011', '05', '113', '02PXS24X', '20110410', 750000),
5 6
('012546', '12', '112', '02IC200L', '20100202', 500000), ('012546', '12', '112', '01G250L', '20100310', 3500000),
7
('012546', '12', '113', '03GC225P', '20110410', 1500000),
8
('027845', '07', '115', '01C5-002', '20110202', 1550000),
9
('027845', '07', '115', '02ST17I', '20100310', 2730000),
10 11
('027845', '07', '111', '0132AV550', '20110410', 4949000), ('020011', '02', '115', '01603', '20100202', 2450000),
12
('020011', '02', '111', '05PLM24M60', '20110310', 1725000),
13
('015558', '01', '111', '05MX1403R', '20100410', 775000),
14
('015558', '01', '115', '02MT15I XPERIA NEO', '20110410', 2900000
5
Plugin Notepad++ Terbaik – List Lengkap
6
Mengubah Port Apache dan MySQL di XAMPP
7
Cara Install XAMPP di Windows – Panduan Lengkap
8
Mencari Titik Tengah Koordinat Dengan Javascript dan PHP
Tabel akan tampak seperti gambar berikut:
9
Mendesain Blockquote Menarik Dengan CSS
10
Mengganti Warna dan Background Teks Yang Terseleksi
Pertama kita akan melakukan penjumlahan semua penjualan berdasarkan tahun, query yang kita gunakan adalah: 1 2 3
SQL SELECT SUM(IF(tgl_byr LIKE "2011%", jml_byr, 0)) AS jml_2011 , SUM(IF(tgl_byr LIKE "2010%", jml_byr, 0)) AS jml_2010 FROM tunai
Output yang kita peroleh: +----------+----------+ | jml_2011 | jml_2010 | +----------+----------+ | 16124000 | 9955000 | +----------+----------+
Jika kita akan mengelompokkan berdasarkan id pelanggan sehingga dapat diketahui berapa jumlah pembelian yang dilakukan per tahunnya maka query yang kita gunakan: SQL 1 SELECT id_pelanggan, 2 id_cabang, 3 SUM(IF(tgl_byr LIKE "2011%", jml_byr, 0)) AS jml_2011, 4 SUM(IF(tgl_byr LIKE "2010%", jml_byr, 0)) AS jml_2010, 5 SUM(jml_byr) AS TOTAL 6 FROM tunai http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
2/24
5/13/2016
6
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev FROM tunai
7
GROUP BY id_pelanggan, id_cabang
Hasil yang kita dapatkan: +--------------+-----------+----------+----------+---------+ | id_pelanggan | id_cabang | jml_2011 | jml_2010 | TOTAL | +--------------+-----------+----------+----------+---------+ | 012546 | 12 | 1500000 | 4000000 | 5500000 | | 015558 | 01 | 2900000 | 775000 | 3675000 | | 020011 | 02 | 1725000 | 2450000 | 4175000 | | 020011 | 05 | 3500000 | 0 | 3500000 | | 027845 | 07 | 6499000 | 2730000 | 9229000 | +--------------+-----------+----------+----------+---------+
jika kita ingin menjumlahkan kolom dengan beberapa kondisi, kita tidak bisa menggunakan if, tetapi menggunakan CASE, yang pembahasannya di artikel berikut ini. UPDATE Mas awy dalam feedbacknya ingin membuat grand total dari total yang ada, saya rasa perlu untuk saya tambahkan pada artikel ini sehingga dapat lebih bermanfaat. Terdapat beberapa cara untuk membuat grand total dari total yang ada, beberapa diantaranya dapat dibaca pada artikel: Menghitung Total dan Subtotal Pada MySQL. Contoh kali ini kita akan menggunakan UNION ALL, sehingga querynya menjadi berikut: 1
SQL
SELECT id_pelanggan,
2
id_cabang,
3
SUM(IF(tgl_byr LIKE "2011%", jml_byr, 0)) AS jml_2011,
4
SUM(IF(tgl_byr LIKE "2010%", jml_byr, 0)) AS jml_2010,
5 6
SUM(jml_byr) AS TOTAL FROM tunai
7
GROUP BY id_pelanggan, id_cabang
8
UNION ALL
9
SELECT "Grand Total" as id_pelanggan,
10
"" as id_cabang,
11 12
SUM(IF(tgl_byr LIKE "2011%", jml_byr, 0)) AS jml_2011, SUM(IF(tgl_byr LIKE "2010%", jml_byr, 0)) AS jml_2010,
13 14
SUM(jml_byr) AS TOTAL FROM tunai
Hasil yang kita dapatkan: +--------------+-----------+----------+----------+----------+ | id_pelanggan | id_cabang | jml_2011 | jml_2010 | TOTAL | +--------------+-----------+----------+----------+----------+ | 012546 | 12 | 1500000 | 4000000 | 5500000 | | 015558 | 01 | 2900000 | 775000 | 3675000 | | 020011 | 02 | 1725000 | 2450000 | 4175000 | | 020011 | 05 | 3500000 | 0 | 3500000 | | 027845 | 07 | 6499000 | 2730000 | 9229000 | | Grand Total | | 16124000 | 9955000 | 26079000 | +--------------+-----------+----------+----------+----------+
Recomended Post
Menghitung Field/Kolom Pada Tabel MySQL Dengan Kon...
Like
Cara Terbaru Install MySQL Menghubungkan Service di Windows MySQL Dengan PHP –...
LOAD DATA INFILE: Load File CSV Ukuran Besar ke Da...
Like
Bagikan 0 Tw eet Share Share Share 1 http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
3/24
5/13/2016
Share
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev Share
1
Bagikan
0
Tw eet
Share
67 Feedback dari pembaca Umam 23 November 2012 at 17:48
mantapp ini…….. saya izin cpas ya. trimss. Reply adilog 24 November 2012 at 06:23
monggo mas… semoga bermanfaat…… Reply
OEI 9 October 2013 at 17:34
mas kalo men – sum hasil dari total untuk tabel ini Reply adilog 10 October 2013 at 13:23
Maaf, maksudnya apa ya mas? Reply awy 10 December 2015 at 17:59
om agus, sama, saya juga punya maksud seperti itu, bagaimana caranya hasil dari kolom total, ditotal kembali, seperti membuat grand total pada footernya. pada case diatas hasil grand totalnya jadi 26.079.000. Saya ingin membuat total dari data yang sudah tampil di table html, bukan membuat query dari database. thanks, Reply agusph 11 December 2015 at 06:42
Terimakasih mas, feedback yang bagus. Untuk membuat Grand Total sudah saya sertakan pada update artikel diatas. Jika ingin menambahkan di HTML, mas bisa menggunakan php. Sebenarnya untuk membuat grand total bisa melalui php bisa juga langsung melalui query, tetapi yang paling baik adalah via query karena menganut prinsip “sekali jadi” dan akan kompatibel jika di gunakan di bahasa pemrograman lain. Reply Abanda Venusman 5 December 2013 at 10:47
http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
4/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
keren mas, mengingatkan saya kembali tentang like ‘%harus%’ Reply hadi 11 June 2014 at 06:54
kalaw mau seperti ini gmna : kode | nama | jumlah kirim 001 | buku | 3 001 | buku | 4 JUMLAH | 7 002 | Pensil| 5 JUMLAH | 5 003 | hp | 2 003 | hp | 1 JUMLAH | 3 *di setiap nama barang yg sma di jumlah kan dan hasilnya berada tepat di bawah nama barang Reply adilog 11 June 2014 at 13:19
Coba menggunakan rollup, tapi rollup mengharuskan GROUP BY, jadi harus ada yang unik antar kode dan nama. query: SELECT kode, IFNULL(nama, ‘JUMLAH’) AS nama, sum(jumlah) as jumlah FROM `tes` GROUP BY kode, nama WITH ROLLUP menghasilkan kode|nama|jumlah 001|buku|3 001|buku 2|4 001|JUMLAH|7 dengan asumsi row ke dua diganti buku 2 Reply IGst Ngr Adi Perdana 31 August 2014 at 20:02
mas saya maw bertanya misalkan dalam tabel ada seperti ini Nama barangjumlahtgl sampo 3 12-06-2014 sampo 4 13-06-2014 sabun 3 13-06-2014 saya ingin menjumlahkan isi dari tabel bedasarkan nama barang hingga jadi kayak gini Nama barangjumlah sampo 7 sabun 3 tolong pencerahannya ,, Reply adilog http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
5/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev 1 September 2014 at 01:09
Bisa dicoba menggunakan group mas Misal struktur tabel seperti ini: nama_produk | jml | tgl sampo | 3 | 12-06-2014 sampo | 4 | 13-06-2014 sabun | 3 | 13-06-2014 Query: SELECT nama_produk AS “Nama Barang”, SUM(jml) AS jumlah FROM `produk` GROUP by nama_produk Hasil: Nama Barang | jumlah sabun | 3 sampo | 7 Sedikit saran, sebisa mungkin hindari penggunaan nama secara langsung, lebih baik diganti dengan id misal sabun 1, sampo 2, dan
dibuat
tabel
referensi
misal
dengan
nama
tabel
nama_produk, dengan struktur: id_produk | nama_produk 1 | sabun 2 | sampo Reply IGst Ngr Adi Perdana 1 September 2014 at 04:11
terima kasih banyak mas,, sarannya jalan,, iyaa mas,,sudah saya isikan id sebaga pembeda,, terima kasih banyak sarannya mas Reply leoisnanto 20 September 2014 at 05:18
mas klo seuai tabel punya mas,, klo mau jumlahin per bulan gimana mas?? Terima kasih.. Reply adilog 22 September 2014 at 01:47
Seperti pivot tabel ya mas tergantung fieldnya mas, bisa pakai IF atau CASE kalau seperti diatas 1 2 3 4 5 6 7 8
SELECT SQL SUM (IF(tgl_byr LIKE "201101%", jml_byr, 0)) SUM (IF(tgl_byr LIKE "201102%", jml_byr, 0)) SUM (IF(tgl_byr LIKE "201103%", jml_byr, 0)) SUM (IF(tgl_byr LIKE "201104%", jml_byr, 0)) SUM (IF(tgl_byr LIKE "201105%", jml_byr, 0)) FROM tunai
Jika parameter lebih dari 1 http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
6/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
1
SELECT
SQL
2
SUM (CASE WHEN tgl_byr LIKE "%01%" AND tahun
3
SUM (CASE WHEN tgl_byr LIKE "%02%" AND tahun
4
SUM (CASE WHEN tgl_byr LIKE "%03%" AND tahun
5
SUM (CASE WHEN tgl_byr LIKE "%04%" AND tahun
6 7
SUM (CASE WHEN tgl_byr LIKE "%05%" AND tahun FROM
8
tunai
Reply Sandy 31 October 2014 at 01:55
Terima kasih banyak mas, tapi masih ada pertanyaan. Kalau ini saya aplikasikan di database oracle muncul error ya ORA-00907: missing right parenthesis Reply adilog 10 December 2014 at 21:33
oracle syntaxnya agak beda mas, ikuti saja pesan errornya, mudah mudahan bisa fix Reply casper 10 December 2014 at 07:33
Om mau nanya, saya punya tabel : ———————————————————| Kode | Header | Nama | Saldo | ———————————————————1-10-0 | – | Kas | 1-11-0 | 1-10-0 | Kas A | 1000 1-12-0 | 1-10-0 | Kas B | 200 2-10-0 | – | Kendaraan | 2-11-0 | 2-10-0 | Mobil | 2-11-1 | 2-11-0 | avanza | 50 2-11-2 | 2-11-0 | jazz | 80 2-12-0 | 2-10-0 | Motor | 2-12-1 | 2-12-0 | honda | 30 ———————————————————Bagaimana jika saya update atau insert salah satu kode maka total saldo otomatis ter SUM ke header masing2 kode seperti berikut : ———————————————————| Kode | Header | Nama | Saldo | ———————————————————1-10-0 | – | Kas | 1200 1-11-0 | 1-10-0 | Kas A | 1000 1-12-0 | 1-10-0 | Kas B | 200 2-10-0 | – | Kendaraan | 160 2-11-0 | 2-10-0 | Mobil | 130 2-11-1 | 2-11-0 | avanza | 50 2-11-2 | 2-11-0 | jazz | 80 2-12-0 | 2-10-0 | Motor | 30 2-12-1 | 2-12-0 | honda | 30 ———————————————————http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
7/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
Mohon bantuannya Om Reply adilog 10 December 2014 at 21:32
Fungsi terkait untuk menangani permasalahan tersebut biasanya pakai trigger mas, namun sepengetahuan saya, di MySQL kita tidak dapat memanipulasi row pada tabel yang sama, ketika tabel tersebut sedang dimanipulasi baik dengan trigger maupun procedure, contoh ketika kita menginsert atau mengupdate row tertentu, di waktu bersamaan tidak dapat meng insert atau update row yang lain. Mungkin cara yang bisa dipakai adalah membuat temporary tabel,
nilai
saldo
disimpan
di
tabel
tersebut,
kemudian
dipindahkan ke tabel asli, namun hal tersebut akan merepotkan jika data yang dimanipulsai jumlahnya besar. Walaupun kita tidak dapat memanipulasi row yang lain, kita dapat memanipulasi nilai yang akan di tambahkan atau di ubah, misal dengan trigger berikut, kita memanipulasi data saldo yang akan ditambahkan menjadi total saldo di header yang sama: 1
DELIMITER $$
2
CREATE TRIGGER update_total_saldo BEFORE INSERT
3 4
FOR EACH ROW BEGIN
SQL
5
DECLARE total INT(11);
6
SELECT SUM(saldo) + NEW.saldo INTO total FROM
7
SET NEW.saldo = total;
8
END
9
$$
1 0 perintah
DELIMITER ; diatas
hanya
bisa
dilakukan
ketika
data
belum
ditambahkan BEFORE UPDATE tidak bisa dilakukan ketika data setelah ditambahkan AFTER UPDATE sehingga jika kita lakukan perintah INSERT INTO kendaraan VALUES ('1-13-0', '1-10-0' , 'Kas C', 1200); maka nilai saldo akan menjadi 2400 bukan 1200 lagi. Semoga dapat membantu. Salam Reply Anis Kurniawan 15 December 2014 at 08:37
misi om mau tanya om,, kalau mau menjumlah data id_pelanggan yang melakukan transaksi menurut tgl_bayar bagaimana om? thanks Reply adilog 15 December 2014 at 09:11
Mungkin seperti ini mas: http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
8/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
1
SELECT id_pelanggan, tgl_byr, jml_byr
2
FROM tunai
3
GROUP BY id_pelanggan, tgl_byr
SQL
hasilnya: id_pelanggan
tgl_byr
jml_byr
012546
20100202
500000
012546
20100310
3500000
012546
20110410
1500000
015558
20100410
775000
015558
20110410
2900000
020011
20100202
2450000
020011
20110202
1500000
020011
20110310
1250000
020011
20110410
750000
027845
20100310
2730000
027845
20110202
1550000
027845
20110410
4949000
Reply anwar abdul 21 January 2015 at 03:05
misi om mau tanya nih kalau kaya gini gimana ya? #ID | Project | Client | Point Agus 01 | Piket | Kelas | 2 02 | Piket | Kelas | 3 Total Reply adilog 22 January 2015 at 04:30
maaf, maksudnya bagaimana ya mas? ada contoh tabel awalnya? Reply anwar abdul 22 January 2015 at 04:50
https://encrypted-tbn3.gstatic.com/images? q=tbn:ANd9GcSKz6MhzBggdTw7E297LfX_oY2ttX3CeN-B7ka1OBGUhLsUFGwF bikin kaya gitu mas ,gemiddelda nya dirubah menjadi total dari nilai diatas nay Reply Harry 2 February 2015 at 01:59
Mas..kalo menghitung pembagian antar field dari 2 table berikut: Tabel 1: ———————————————————— ID | Perusahaan | penghasilan | Pajak | ————————————————————1 | PT. Anugerah | 20.000.000 | | 2. | CV. Makmur | 20.000.000 | | Keterangan: – ID (int) (10) (key) http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
9/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev – ID (int) (10) (key)
– Perusahaan (varchar) (50) – Penghasilan (varchar) (30) – Pajak (Varchar) (30) Tabel 2: ———————————————————— ID | Perusahaan | parameter_pajak | ————————————————————1 | PT. Anugerah | 200.000 | 2. | CV. Makmur | 200.000 | Keterangan: – ID (int) (10) (key) – Perusahaan (varchar) (50) – Parameter_pajak (varchar) (30) Pertanyaanya: Misal kita mau menghitung isi kolom “Penghasilan (table-1)” dibagi isi kolom “Parameter_pajak (table-2)” dan hasil baginya otomatis akan terinput ke kolom “Pajak (table-1)”. Serta jika nilai “parameter_pajak (table-2)” dirubah nilai angkanya.. maka total pembagian di “pajak (table-1)” juga akan otomatis berubah. Caranya bagaimana ya mas?? tolong dong mas… makasih sebelumnya. Reply adilog 3 February 2015 at 00:46
Untuk pertanyaan pertama, coba query ini mas:
UPDATE tabel_1 SET pajak = penghasilan / (SELECT parameter_pajak FROM tabel_2 WHERE id = 1) WH yang kedua bisa menggunakan trigger dengan syntax: 1
DELIMITER $$
2
CREATE TRIGGER update_pajak
3
AFTER UPDATE ON tabel_2
4 5 6 7 8 9 1 0
SQL
FOR EACH ROW BEGIN UPDATE tabel_1 SET pajak = tabel_1.penghasilan / NEW.parameter_pajak WHERE tabel_1.id = NEW.id; END $$ DELIMITER;
Jika syntak diatas dijalankan di PHPMyAdmin, mungkin ada pesan error, namun diabaikan saja, biasanya trigger sudah kesimpan. Setelah itu bisa dicoba dengan mengupdate tabel 2: UPDATE tabel_2 SET parameter_pajak = 300000 WHERE id = 2; setelah itu coba cek isi tabel_1 Sedikit saran dari saya mas: 1. Untuk nulai angka seperti kolom penghasilan, pajak, dan parameter_pajak, gunakan type data INT, atau BIGINT, karena akan memudahkan memanipulasi data 2. Untuk penaman tabel maupun field tabel gunakan penamaan yang standar, biasanya huruf kecil semua + underscore, agar memudahkan kita ketika menulis kode, saya biasanya menulis syntax MySQL dengan huruf kapital sehingga jelas perbedaan mana syntax, mana tabel/field. http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
10/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev mana syntax, mana tabel/field.
Semoga membantu Salam… Reply Harry 4 February 2015 at 03:52
Trimakasih mas untuk sarannya, dan field nya udah sya ganti. Trus untuk tipsnya juga sudah sya praktekkan sesuai instruksi, dan triggersnya sih udah masuk mas, tapi kok nilainya gak muncul di table ya mas?? di kolom “pajak(table_1)” tetep kosong tuh mas. Trus saat saya masukin script yg kedua, muncul pesan erros “#1054 – Unknown column ‘id = 2’ in ‘where clause’ “. Sebagai
pertimbangan
mas,
misalnya
table_2
(parameter_pajak) itu saya jadiin satu dengan table_1, jadi saya pake 1 table saja. trus nanti pake sistem pembagian biasa, ama nanti tinggal di select saat nampilin
ke
browser
(kolom
“parameter_pajak”
ditampilin buat admin, dan kolom “perusahaan & pajak” untuk user). Kira2 dri sisi efektif dan keamanannya lebih bagus dipisah atau disatuin aja mas?? Mohon
pencerahannya
mas..,
terimakasih
banyak
sebelumnya. Reply adilog 5 February 2015 at 12:21
Jawaban 1: Untuk tabelnya coba seperti ini mas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
CREATE TABLE IF NOT EXISTS ` tabel_1 SQL `id` int(11) NOT NULL, `perusahaan` varchar(50) NOT `penghasilan` int(11) NOT NULL `pajak` int(11) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET INSERT INTO `tabel_1` (`id`, ` (1, 'PT. Anugerah', 20000000, (2, 'CV. Makmur', 20000000, 0) CREATE TABLE IF NOT EXISTS `tabel_2 `id` int(11) NOT NULL, `perusahaan` varchar(50) NOT `parameter_pajak` int(11) NOT ) ENGINE=MyISAM DEFAULT CHARSET INSERT INTO `tabel_2` (`id`, ` (1, 'PT. Anugerah', 200000), (2, 'CV. Makmur', 200000);
Jawaban 2: Untuk field pajak pada tabel_1 tidak perlu di buat karena merupakan attribut komposit (bisa didapatkan dari hasil operasi field lain) dengan penghasilan / parameter pajak, http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
11/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev dengan penghasilan / parameter pajak,
namun
situasional
juga,
kalau
sangat
terpaksa bisa di tambahkan. Untuk
penggabungan
tabel,
sangat
tergantung dari tabel-tabel yang lain, kalau hanya tabelnya itu saja, sebaiknya digabung saja mas, karena tidak ada attribut (kolom) bernilai
banyak,
jadi
fieldnya
perusahaan,
id,
penghasilan,
parameter_pajak Jika
harus
dipisah,
sebaiknya
entitas
perusahaan berdisi sendiri, misal tabel_1 dengan
attribute:
nama_perusahaan dengan
id_perusahaan, sedangkan
attribute
tabel_2
id_perusahaan,
penghasilan, pajak jangan mengulang nama perusahaan, karena akan mempengaruhi integritas data, misal nama perusahaan di tabel_1 diubah, maka tabel_2 sudah tidak sinkron lagi penamaan
id
sebaiknya
spesifik,
misal
id_perusahaan, bukan sekedar id, karena ketika id_perusahaan menjadi foreign key, akan mudah teridentifikasi, disamping itu ketika memudahkan kita dalam melakukan join ketika menulis kode SQL, hal ini akan terasa jika bekerja dengan banyak tabel, puluhan hingga mungkin ratusan tabel nama tabel sebaiknya mencerminkan isi tabel, saya menggunakan tabel_1 dan tabel_2 hanya untuk mempermudah saja Agar lebih mendalam, bisa membaca buku ini mas, Dasar Perancangan dan Implementasi Database karya Abdul Kadir, atau Pengantar Data Base / Database karya Ir. Fatansyah Semoga dapat membantu… Salam…. Reply hadypratama4 3 February 2015 at 03:38
mantap Reply Anonim 22 August 2015 at 06:17
Hallo om agus ph, Saya mau tanya Kalo cara menghitung total part reject berdasarkan tanggal, shift, part Tanggal | shift | barang | reject | jml 2015-08-20 | S1 | abc | rusak | 3 2015-08-20 | S1 | abc | patah | 5 2015-08-20 | S1 | abc | ancur | 7 2015-08-20 | S1 | def | pecah | 2 http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
12/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev 2015-08-20 | S1 | def | pecah | 2
2015-08-20 | S2 | abc | rusak | 4 2015-08-20 | S2 | def | rusak | 1 Saya mau menampilkan total reject ketika saya memilih pada option combo box: tanggal ’20 agustus 2015′ di ‘shift 1’ untuk part ‘abc’ Maka tanpa harus submit, akan tampil nilai total di dalam textbox (readonly). Mohon pencerahannya. Sebelum dan sesudahnya terimakasih om Reply agusph 24 August 2015 at 16:59
Misal tabel nya bernama produk, query yang digunakan bisa memakai ini mbak: 1
SELECT SUM(jml) as JUMLAH
2
FROM produk
3
WHERE tanggal = '2015-08-20' AND shift = 'S1' AND
SQL
nanti ketemu hasilnya 15 untuk memanggil query tersebut ketika combo box di ganti nilainya, bisa menggunakan ajax, javascript. jika pengen lebih mudah bisa pakai library seperti jquery, event nya bisa pakai onChange, ajaxnya bisa menggunakan get Semoga dapat membantu Reply belajarhebat 24 September 2015 at 15:29
Wih artikelnya keren. Oh ya gan ane mau tanya klo menjumlahkan (bukan di sum) 2 field mysql dan menjadi field tabel baru (AS) gimana ya??. Maklum masih amatiran ×_× Reply agusph 25 September 2015 at 05:44
Terima kasih mas. Misal kita punya tabel nilai_ujian dengan field nama, nilai1 dan nilai2. Maksudnya ingin menjumlahkan field nilai1 dan nilai2 ya mas? kalau yang dimaksud seperti itu bisa dicoba query berikut: SELECT nama, nilai1 + nilai2 as jumlah FROM nilai_ujian Reply Fredy 27 November 2015 at 12:11
Mas, minta bantuannya buat tampilan dibawah ini : 001 KARYA UMUM 49 49 001 FILSAFAT DAN PSIKOLOGI 928 928 001 AGAMA 899 899 001 ILMU-ILMU SOSIAL 186 186 http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
13/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev 001 ILMU-ILMU SOSIAL 186 186
Kode nya seharusnya berurutan mas seperti : 001, 002, 003, 004 query yang saya pakai seperti ini mas : $Query0 = mysqli_query($conn, “SELECT SUBSTR(eks_klasifikasi, 2, 3) AS KODE,
COUNT(buku_id)
AS
JUMLAH_JUDUL,
COUNT(eks_buku)
AS
JUMLAH_EKS FROM m_buku JOIN m_eksemplar ON m_buku.buku_id = m_eksemplar.eks_buku WHERE eks_klasifikasi LIKE ‘%0’ AND buku_id IS NOT NULL”) Fungsi LIKE nya saya ganti untuk nomor urut 002 tapi pas di tampilan tetap 001. Thanks bantuannya Mas Reply agusph 28 November 2015 at 05:18
Saya belum ada gambaran data awalnya mas, cuman bisa dicoba untuk menambahkan group by, karena ketika kita menggunakan fungsi agregat seperti COUNT, maka dibelakang layar MySQL akan melakukan group, yang field nya otomatis dipilihkan oleh MySQL, sehingga kadang hasil untuk field non agregat tidak sesuai harapan. Reply awy 12 December 2015 at 19:55
dear om agus, terima kasih atas responnya.. maksud saya sih saya membuat grand total dariphp karena untuk menguji hasil querynya. saya mau buat grand total untuk jurnal umum di akuntansi. jadi saya bisa cek apakah debet dan kreditnya sama. jadi bila ada kesalahan input di detailnya, saya bisa crosscheck. btw, sekali lagi, terima kasih atas pencerahannya.. sukses ya om agus.. salam, Reply agusph 12 December 2015 at 21:58
Oh begitu ya mas, iya bisa pakai PHP mas, memang tidak bisa semua output dapat kita dapatkan langsung dari query MySQL, untuk case yang kompleks kadang perlu bantuan PHP. Sukses juga ya mas Awy… Reply aries 23 January 2016 at 21:32
Mas Agusph Jika saya ingin membuat tabel PERHITUNGAN program gaji pegawai sederhana misal : seperti perkalian penjumlahan dan lain lain dan program tsb saya SELIPKAN di program PHPMAKER apakah ada bedanya ? mksdnya apakah coding PHP murni dan PHPMAKER berbeda ? terima kasih http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
14/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev murni dan PHPMAKER berbeda ? terima kasih
Reply agusph 24 January 2016 at 06:13
PHPMaker menyediakan berbagai fungsi untuk fetching data pada database mas, secara default aplikasi tersebut menggunakan active record untuk pengelolaan databasenya, namun kita juga dapat menjalankan perintah SQL murni seperti menggunakan fungsi ew_LoadRecordset Reply ali 16 February 2016 at 10:29
om agus numpang tanya kalo mau nampilkan nama
|jml
acer 470|1| acer 470|3| biar bisa tampil kayak gini acer 470|4| Reply agusph 16 February 2016 at 18:08
Coba pakai query ini mas: SELECT nama, SUM(jml) as jumlah FROM nama_tabel GROUP BY nama
Reply ali 17 February 2016 at 06:10
makasih om agus … alkhamdulilah berasil Reply wayan 20 February 2016 at 10:46
om agus saya mau tanya, tapi sebelumnya saya jelaskan dulu ini saya bingung di sistem yang saya buat yaitu sistem koperasi, nah saya bingungnya cara nampilin sisa angsuran yang belum di bayar,contoh:si a meminjam 12 jt dan susah di angsur 1jt per bulan dan sudah bulan ke 6 nah jadinya 12-6 = 6 jt sisa hutang yang harus di angsur saya bingung cara menampilkannya dengan query , mohon bantuannya dan satu lagi untuk menampilkan ansuran ke berapa juga masih bingung trims Reply agusph 20 February 2016 at 13:49
Saya perlu tahu struktur tabel nya mas, misal: tabel nasabah id_nasabah | nilai_kredit 1 | 12000000 tabel_angsuran http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
15/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev tabel_angsuran
id_nasabah | jml_byr | tgl_byr 1 | 1000000 | 2016-01-01 1 | 1000000 | 2016-02-01 1 | 1000000 | 2016-03-01 1 | 1000000 | 2016-04-01 1 | 1000000 | 2016-05-01 1 | 1000000 | 2016-06-01 Bisa dicoba query ini mas SELECT id_nasabah, nilai_kredit - jml_angsuran AS saldo SQL FROM tabel_nasabah LEFT JOIN ( SELECT id_nasabah, SUM(jml_byr) as jml_angsuran FROM tabel_angsuran GROUP BY id_nasabah ) as tbl_angsuran USING (id_nasabah) Reply rohman 28 February 2016 at 00:30
Om agus, mau tanya nih Saya punya query spt ini: SELECT pembelian.kode_barang, SUM(pembelian.jumlah) AS beli, penjualan.kode_barang, SUM(penjualan.jumlah) AS jual. (barang.kode_barang) AS kode_barang, barang.nama_barang FROM ( SELECT * FROM barang JOIN pembelian ON barang.kode_barang = pembelian.kode_barang ) as pembelian LEFT JOIN penjualan ON barang.kode_barang = penjualan.kode_barang GROUP BY barang.kode_barang Yg sy tanyakn Ketika input penjualan.jumlah misalkan 1 tapi yg tampil kok gk sesuai yg di input ya, tampil nya jadi 2 Klo input 11 jadi 22 Mohon bantuan nya… Terimakasih sebelumnya Reply agusph 28 February 2016 at 13:15
Mungkin karena hubungan antar tabel nya many to many mas, sehingga ketika di joinkan datanya muncul semua, mungkin tabel penjualan perlu di buat temporary tabel kemudian di GROUP, sama Tabel temporary yang didalam clausa FROM mungkin perlu di group juga, coba dipelajari solusi ini mas: http://jagowebdev.com/menghitung-fieldkolom-pada-tabel-mysqldengan-kondisi-tertentu-menggunakan-count-if/#div-comment281 jika belum bisa, coba di posting contoh datanya ke facebook http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
16/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
JagoWebDev nanti kita bahas disana, biar runtut.. Reply rohman 28 February 2016 at 14:02
Oke om saya coba dulu Reply agusph 28 February 2016 at 20:32
Iya mas, semoga sukses… Reply rohman 1 March 2016 at 20:04
udah solved mas agus terimaksih atas referensi nya kira-kira query nya seperti ini: SELECT `t`.`kode_barang`, `t`.`nama_barang`, `t`.`satuan`, `t`.`kategori`, SUM(`t`.`belii`) AS `beli`, SUM(`t`.`juall`) AS `jual` FROM ( SELECT `barang`.`nama_barang`, `barang`.`satuan`, `barang`.`kategori`, `pembelian`.`kode_barang`, SUM(`pembelian`.`jumlah`) As `belii`, NULL AS `juall` FROM `pembelian` LEFT JOIN `barang` USING (`kode_barang`) GROUP BY `barang`.`kode_barang` UNION SELECT `barang`.`nama_barang`, `barang`.`satuan`, `barang`.`kategori`, `penjualan`.`kode_barang`, NULL AS `belii`,SUM(`penjualan`.`jumlah`) AS `juall` FROM `penjualan` LEFT JOIN `barang` USING(`kode_barang`) GROUP BY `barang`.`kode_barang` ) AS `t` GROUP BY `kode_barang` mohon di koreksi jika ada salah maaf telat replay Reply agusph 3 March 2016 at 05:33
Sip mas, sudah betul… Reply Cecep 6 April 2016 at 08:08
Mas Agusph saya punya tabel akun dan jurnal bagaimana querynya untuk menampilkan Neraca? TABEL AKUN KODE
NAMA_AKUN
JENIS
GOLONGAN
1010001 Kas
Aktiva
Aktiva Lancar
D
10.000.000
1010002 Persediaan
Aktiva
Aktiva Lancar
D
5.000.000
1020001 Mobil
Aktiva
Aktiva Tetap
D
10.000.000
http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
KET
SALDO_AWAL
17/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev 1020001 Mobil Aktiva Aktiva Tetap D
10.000.000
1020002 Tanah
Aktiva
Aktiva Tetap
D
20.000.000
2010001 Utang Bank
Pasiva
Kewajiban Lancar
K
4.000.000
2010002 Utang Supplier Pasiva
Kewajiban Lancar
K
2.000.000
3010001 Modal Pemilik
Modal
Modal
K
79.000.000
3020001 Rugi Laba
Modal
Rugi Laba
K
14.000.000
4010001 Pendapatan 1
Pendapatan
Pendapatan Operasional K
20.000.000
4010002 Pendapatan 2
Pendapatan
Pendapatan Operasional K
5.000.000
4020001 Pendapatan Lain Pendapatan
Pendapatan Non Operasional K
2.000.000
5010001 Biaya Gajih
Biaya
Biaya Operasional
D
10.000.000
5010002 Biaya Atk
Biaya
Biaya Operasional
D
2.000.000
5020001 Biaya Lainnya
Biaya
Biaya Non Operasional
D
1.000.000
TABEL JURNAL NO
TGL
KODE
GOLONGAN
KET
NOMINAL
1
2016/03/01
1010001 Aktiva Lancar
D
1.000.000
1
2016/03/01
2010001 Kewajiban Lancar
K
1.000.000
2
2016/03/01
3010001 Modal
D
2.000.000
2
2016/03/01
1010001 Aktiva Lancar
K
2.000.000
3
2016/03/01
1010001 Aktiva Lancar
D
5.000.000
3
2016/03/01
4010001 Pendapatan Operasional
K
5.000.000
4
2016/03/01
5010001 Biaya Operasional
D
2.000.000
4
2016/03/01
1010001 Aktiva Lancar
K
2.000.000
TABEL NERACA Aktiva Aktiva Lancar 1010001 Kas
D
12.000.000
1010002 Persediaan
D
5.000.000
Total Aktiva Lancar
17.000.000
Aktiva Tetap 1020001 Mobil
D
39.000.000
1020002 Tanah
D
20.000.000
Total Aktiva Tetap
59.000.000
Total Aktiva
76.000.000
Pasiva Kewajiban Lancar 2010001 Utang Bank
K
5.000.000
2010002 Utang Supplier
K
2.000.000
Total Kewajiban Lancar
7.000.000
Modal 3010001 Modal Pemilik
K
Total Modal
52.000.000 52.000.000
Rugi Laba 3020001 Rugi Laba Total Pasiva
K
17.000.000 76.000.000
Reply agusph 7 April 2016 at 05:34
Untuk dapat menghubungkan kedua tabel reation nya harus ONE http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
18/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
to ONE mas, maka perlu untuk membuat tabel jurnal menjadi 1 row untuk setiap kode akun, coba query berikut mas: SELECT kode, nama_akun, ta.ket,
PHP
CASE WHEN ta.jenis = "Aktiva" THEN saldo_awal + nominal_d - nominal_k WHEN ta.jenis = "Pasiva" THEN saldo_awal - nominal_d + nominal_k ELSE 0 END AS Saldo FROM tabel_akun ta LEFT JOIN ( SELECT kode, jenis, SUM(IF (ket = "D", nominal FROM( SELECT kode, jenis, tj.ket, SUM(nominal FROM tabel_jurnal tj LEFT JOIN tabel_akun USING(kode) WHERE tj.ket = "D" GROUP BY kode UNION ALL SELECT kode, jenis, tj.ket, SUM(nominal Kode diatas memberikan gambaran umum untuk langkah selanjutnya Reply giman 21 April 2016 at 11:40
ijin kopas . bermanfaat sekali Reply agusph 22 April 2016 at 21:05
Silakan mas, jangan lupa cantumkan sumbernya ya… Reply fifah 22 April 2016 at 08:38
mas mau nanya kalau saya punya seperti ini querynya gimana ya mas no anggaran bobot % 1 300 ? 2 200 ? 3 500 ? tot sum(anggaran) sum(bobot) bobot didapat dari => anggaran/sum(anggaran)*100 mohon pencerahannya mas Reply agusph 22 April 2016 at 21:06
Data awalnya seperti apa ya mbak? Reply fifah 25 April 2016 at 12:23
http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
19/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
25 April 2016 at 12:23
data awal seperti ini mas agus
field tabel kegiatan
field tabel anggaran
id_kegiatan
id_anggaran
kode_kegiatan
kode_kegiatan
kegiatan
anggaran tahun_anggaran
bagaimana querynya untuk dapat tampilan seperti berikut no
anggaran bobot
1
200.000
13,33
2
400.000
26,67
3
500.000
33,33
4
100.000
6,67
5
300.000
20,00
Total 1500.000 100,00 nilai bobot di dapat dari bobot= (anggaran/totalanggaran)*100 atas bantuannya saya ucapkan terima kasih Reply agusph 25 April 2016 at 21:11
Untuk single query bisa dicoba query ini mbak: SELECT id_anggaran, anggaran, ROUND(anggaran/(SEL ECT SQL FROM anggaran UNION SELECT 'TOTAL', SUM(anggaran), '100%' FROM anggaran Namun kelemahannya, karena menggunakan subquery pada select, maka jika row yang diolah banyak maka waktu eksekusi semakin lama, arternatifnya bisa menggunakan variabel: SET @total = (SELECT SUM(anggaran) FROM anggaran) ; SQL SELECT id_anggaran, anggaran, ROUND(anggaran/@total*100 FROM anggaran UNION SELECT 'TOTAL', SUM(anggaran), '100%' FROM anggaran Hasilnya: +-------------+----------+-------+ | id_anggaran | anggaran | bobot | +-------------+----------+-------+ |1
|
200000 | 13.33 |
|2
|
400000 | 26.67 |
|3
|
500000 | 33.33 |
|4
|
100000 | 6.67 |
|5
|
300000 | 20.00 |
| TOTAL
| 1500000 | 100% |
+-------------+----------+-------+ Reply aziscan http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
20/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
aziscan
26 April 2016 at 10:21
mas Agus, izin bertanya.. Data saya misal seperti ini : TABEL PEMAKAIAN BAHAN Tanggal
Bahan
01/04/2016
Terigu
Jumlah Pakai 10
Gudang BELAKANG
02/04/2016
Terigu
5
BELAKANG
03/04/2016
Terigu
5
depan
10/04/2016
Terigu
5
BELAKANG
01/04/2016
Mentega
10
BELAKANG
02/04/2016
Mentega
10
depan
04/04/2016
Mentega
10
BELAKANG
01/04/2016
Telur
10
BELAKANG
02/04/2016
Telur
10
BELAKANG
03/04/2016
Telur
10
depan
TABEL SUPPLY BAHAN Tanggal
Bahan
Jumlah Supply
Gudang
01/04/2016
Terigu
100
01/04/2016
Terigu
50
04/04/2016
Terigu
100
BELAKANG
01/04/2016
Telur
100
BELAKANG
03/04/2016
Telur
100
BELAKANG
01/04/2016
Mentega
100
BELAKANG
04/04/2016
Mentega
100
BELAKANG
BELAKANG depan
Hasil yang ingin diharapkan adalah : JIKA kita pilih TANGGAL ANTARA : 01/04/2016 sampai dengan 03/04/2016 dan GUDANG : BELAKANG data yang ditampilkan adalah : Bahan
Jlh Pemakaian
Jumlah Supply
Terigu
15
100
Mentega
10
100
Telur
20
200
mohon share ilmunya mas, terima kasih sebelumnya… Reply agusph 26 April 2016 at 18:46
Untuk menjoinkan tabel, hubungan antar tabel tersebut HARUS one to one relationship mbak, jika belum maka buat temporary tabel dengan subquery. Sedikit saran: Untuk tanggal sebaiknya pakai format standar database: yyyy-mm-dd, untuk nama gudang dan nama bahan bisa digantikan kode Dengan asumsi data apa adanya, coba gunakan query ini untuk memperoleh hasil yang diinginkan: SELECT bahan, SUM(jml_pakai) AS "Jml Pemakaian", SQL jml_supply FROM pemakaian LEFT JOIN ( SELECT SUM(jml_supply) AS jml_supply, bahan http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
21/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev SELECT SUM(jml_supply) AS jml_supply, bahan
FROM supply WHERE STR_TO_DATE(tanggal, '%d/%m/%Y') BETWEEN "2016-04-01" GROUP By bahan ) as supply USING(bahan) WHERE STR_TO_DATE(tanggal, '%d/%m/%Y') BETWEEN "2016-04-01" GROUP BY bahan Reply Daiki 2 May 2016 at 21:21
Kalau source code penjumlahan yg dibahas versi php.nya gimana mas? Aku kurang paham soalnya masih newbie mas Reply agusph 3 May 2016 at 18:45
coba pelajari artikel ini mas: Menghitung Total dan Subtotal Pada MySQL Reply Andri 4 May 2016 at 15:53
Hello Pak Agus, mau nanya , misalnya saya punya Tabel 1 dengan total row 5 dan table 2 dengan total row 10 serta table 3 dengan total row 25 pertanyaan : bagaiman supaya tabel 4 ini berisi semua row yang ada di tabel 1 , tabel 2, tabel 3 sehingga jumlah row yang ada di tabel 4 ini menjadi 50 row dan otomatis terus bertambah dan berkurang jika row ditabel 1 , tabel 2 dan tabel 3 ada yang bertambah atau berkurang Thanks, salam Reply agusph 4 May 2016 at 18:23
Coba pakai union mas, misal: SELECT id_tabel1, nama_tabel1, alamat_tabel1 FROM tabel1 UNION SELECT id_tabel2, nama_tabel2, alamat_tabel2 FROM tabel2 UNION SELECT id_tabel3, nama_tabel3, alamat_tabel3 FROM tabel3 Syarat menggunakan union: banyaknya kolom HARUS sama, jika tidak sama bisa menggunakan fixed value Reply andri 5 May 2016 at 00:16
izin tanya lagi pak Agus1.mau tanya lagi pak agus, apakah dengan cara diatas brarti ada terbentuk data tabel baru ya. ..? bukan hanya view saja kan.? http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
22/24
5/13/2016
Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
kan.?
2. bagaimana cara membuat tabel misalnya tabel terdiri dari 4 field dengan judul fieldnya yaitu: field1 : namabarang field2 : jumlahbarang field3 : hargapersatuan field4 : total lanjut pertanyaannya : bagaimana supaya tabel ini di field 4 otomatis terisi datanya karena hasil perkalian dari field2 dan field 3? thks salam Reply agusph 5 May 2016 at 09:05
Itu temporary tabel mas, maksudnya ya adanya pas ketika query saja bukan real tabel. Untuk pertanyaan kedua, perkaliannya bisa dilakukan pada sisi aplikasi, hasilnya diinsert ke field total. Namun cara ini memiliki kelemahan yaitu ketika salah satu field diupdate, data filed total menjadi tidak akurat. Solusinya perkaliannya dijalankan disisi database, gunakan trigger mas, sehingga ketika salah satu field diupdate, otomatis menjalankan query untuk menghitung total dan mengupdate field total Reply andri 5 May 2016 at 17:29
1. Pak agus,jadi bagaimana supaya bisa otomatis terbentuk data tabel hasil gabungan row semnua? Tdk hanya temporaly tabel, mengingat setiap nanti mau lihat gabungannya harus ketik sql itu lagi kan agak repot? Adakah cara yang otomatis sekali buat saja? 2. Untuk field yang hasil perkalian otomatis keluar, ,. Boleh tolong di bantu kasih contoh sqlnya yang procedure? Sehingga tabel nya menjadi langsung nampak field 1, field2, field 3 dan field 4 nya otomatis terbentuk.. Maklum pak agus.. baru belajar… salam d Reply agusph 6 May 2016 at 20:11
1. Itu memang harusnya demikian mas. Jika menginginkan output seperti itu, memang harus pakai UNION, seberapa kalipun, kecuali desain tabelnya diubah, 3 tabel menjadi satu tabel. Jika menambahkan satu tabel untuk merekap 3 tabel tersebut, saya rasa itu bukan desain tabel yang baik, keuali dalam kondisi ekstra ordinary 2. Setahu saya desain tabel yang baik salah satunya tidak ada field yang isinya turunan dari field yang lain, termasuk yang field total tadi, karena field tadi dapat dengan mudah didapat dari fielddfield lainnya. Kecuali kalau memang kondisi ekstra ordinary. Untuk masalah query yang berulang, memang seharusnya seperti itu tinggal di optimize. Untuk trigger, bisa coba dipelajari ini mas: http://www.sitepoint.com/how-to-create-mysql-triggers/ Reply http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
23/24
5/13/2016
Reply Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL | Jago Web Dev
Silakan tinggalkan komentar Your Comment
Name : Email : Website (optional) : Subm it
TERBARU
KOMENTAR TERAKHIR
SOCIAL
Mengaktifkan Kompresi Gzip Untuk Mempercepat Website
agusph on Menghitung Field/Kolom Pada Tabel MySQL Dengan Kondisi Tertentu Menggunakan COUNT IF
Facebook
Twitter
Google Plus
Setting HTTP Cache Untuk Mempercepat Load Website Cara Terbaru Menghubungkan MySQL Dengan PHP – MySQLi dan PDO Character Set dan Collation Pada MySQL – Yakin Sudah Paham? Fitur Penting Notepad++ Yang Perlu Anda Ketahui
agusph on Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL Erwin A on Menghitung Field/Kolom Pada Tabel MySQL Dengan Kondisi Tertentu Menggunakan COUNT IF andri on Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL agusph on Menggunakan SUM IF untuk menjumlahkan nilai field/kolom suatu Tabel pada MySQL
Copyright ©2016 www.jagowebdev.com
http://jagowebdev.com/menggunakan-sum-if-untuk-menjumlahkan-nilai-fieldkolom-suatu-tabel-pada-mysql/
About
Contact
24/24