Announcement

May 2008
M T W T F S S
« Apr   Jun »
 1234
567891011
12131415161718
19202122232425
262728293031  

Tags

Where are You From?

Query Multi Tables dengan MySQL

Berikut ini saya akan menyajikan teknik mengambil informasi (melakukan query) dengan menggunakan banyak tabel. Sebagai contoh saya memiliki beberapa tabel dibawah ini.

Tabel Pegawai
=============
NIP    NAMA
=============
100231 YULI
100232 ANDI
100233 BUDI

Tabel GAJI
====================
BULAN  NIP    GAJI
====================
01     100231 150000
01     100232 200000
01     100233 150000

Tabel POTONGAN
====================
BULAN  NIP    JUMPOT
====================
01     100231 50000
01     100232 75000

Laporan yang diinginkan adalah : Daftar Gaji Pegawai Bulan Januari

NIP     NAMA   GAJI     POTONGAN  DITERIMA
===========================================
100231  YULI   150000   50000     100000
100232  ANDI   200000   75000     125000
100233  BUDI   150000       0     150000

Maka query (perintah bahasa MySQL) untuk menghasilkan informasi diatas adalah :

SELECT a1.nip,a1.nama,b1.gaji,c1.jumpot,(b1.gaji-c1.jumpot) as diterima 
FROM pegawai as a1,gaji as b1,potongan as c1 
WHERE a1.nip=b1.nip and a1.nip=c1.nip and b1.bulan='01' and c1.bulan='01' order by a1.nip;

atau gunakan cara berikut ini :

SELECT a1.nip, a1.nama, b1.gaji, c1.jumpot, (b1.gaji-c1.jumpot) as diterima
FROM pegawai as a1 LEFT JOIN gaji as b1 ON a1.nip=b1.nip LEFT JOIN potongan as c1 ON a1.nip=c1.nip
WHERE b1.bulan='01' and c1.bulan='01' order by a1.nip;

ada yang tahu cara yang lebih simple atau lebih cepat lagi dalam query?

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

  

  

  

[+] kaskus emoticons nartzco

What is 12 + 14 ?
Please leave these two fields as-is: