Contoh kasus nya misalkan kita memiliki tabel SimpananPegawai
tabel ini berisi data simpanan uang milik pegawai baik kredit atau debit
dengan field-field seperti ini :
Dari tabel di atas nilai simpanan baik yang debit atau kredit bernilai positif
sedangkan data yang akan ditampilkan adalah
berapa total saldo simpanan pegawai nya
ig : @sajuta_screenprint |
untuk merubah nilai simpanan agar menjadi pengurang jika nilai kode simpanan nya adalah "Kredit"
saya gunakan fungsi CASE
CASE kolom kriteria nya
WHEN nilai kriterianya THEN kolom yang dirubah
END
Disini saya tampilkan semua field dan field hasil perubahan field Simpanan
select *,
CASE SP.kodeSimpanan
WHEN 'debit' THEN Simpanan * 1
WHEN 'kredit' THEN Simpanan * (-1)
END AS Simpanan1
from SimpananPegawai SP
Hasil nya seperti berikut :
Untuk menjumlah simpanan pegawai , dan yang saya tampilkan hanya nama pegawai dan saldo simpanan nya saja
maka saya tambahkan DISTINCT --untuk menampilkan 1 dari duplikat record
SUM -- untuk menjumlah simpanan
select distinct SP.pegawai,
SUM (
CASE SP.kodeSimpanan
WHEN 'debit' THEN Simpanan * 1
WHEN 'kredit' THEN Simpanan * (-1)
END) AS Simpanan1
from SimpananPegawai SP
group by SP.pegawai
Jika ada langkah yang lebih sederhana, silahkan di koreksi..
0 komentar:
Posting Komentar