DML JOIN

 


 

Halo Agan-agan! Bertemu lagi dengan saya. Kali ini saya akan mengulas sedikit tentang Data Manipulation Language Join. Join adalah cara untuk menghubungkan data yang diambil dari table-tabel melalui sebuah kolom yang menghubungkan mereka. Pasti aka nada dimana kita mengakses data di table A membutuhkan detail di table B, maka peran join disitu.

1.       Inner Join

Mengembalikan baris-baris dari dua table atau lebih yang memenuhi syarat.

2.       Left Outer Join

Mengembalikan seluruh baris dari table disebelah kiri yang dikenai kondisi ON dan hanya baris dari table disebelah kanan yang memenuhi kondisi join.

3.       Right Outer Join

Mengembalikan semua baris dari table disebelah kanan yang dikenai ON dengan data dari table sebelah kiri yang memenuhi kondisi join. Atau kebalikan dari Left Outer Join.

4.       Full Outer Join

Mengembalikan seluruh baris dari kedua table yang dikenai ON termasuk data-data yang bernilai NULL.

 

Menggabungkan 2 tabel atau lebih

1)      2 tabel

SELECT tabel1.*, table2.* FROM tabel1, tabel2 WHERE tabel1.PK=tabel2.FK;

2)      3 tabel

SELECT tabel1.*, tabel2.*, tabel3.* FROM tabel1, tabel2, tabel3 WHERE tabel1.PK=tabel2.FK AND tabel2.PK=tabel3.FK;

                Dan seterusnya…

 

Dan berikut adalah source code saya



 



 



 



 

CREATE TABLE pelanggan (id_pelanggan varchar(5) NOT NULL, nm_pelanggan varchar(40), alamat text NOT NULL, telepon varchar(20) NOT NULL, email varchar(50) NOT NULL, PRIMARY KEY (id_pelanggan)) ENGINE=InnoDB DEFAULT CHARSET=latin1 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC;


 


 


 

 

CREATE TABLE produk (id_produk varchar (5) NOT NULL, nm_produk varchar (30) NOT NULL, satuan varchar (10) NOT NULL, harga decimal (10,0) NOT NULL default '0', stock int (3) NOT NULL default '0', PRIMARY KEY (id_produk)) ENGINE=InnoDB DEFAULT CHARSET=latin1;



 



 

CREATE TABLE pesan (id_pesan int (5) NOT NULL AUTO_INCREMENT, id_pelanggan varchar (5) NOT NULL, tgl_pesan date NOT NULL, PRIMARY KEY (id_pesan), KEY id_pelanggan (id_pelanggan), CONSTRAINT pesan_ibfk_2 FOREIGN KEY (id_pelanggan) REFERENCES pelanggan (id_pelanggan)) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;



 

CREATE TABLE detail_pesan (id_pesan int (5) NOT NULL, id_produk varchar (5) NOT NULL, jumlah int (5) NOT NULL default '0', harga decimal (10,0) NOT NULL default '0', PRIMARY KEY (id_pesan, id_produk), KEY FK_pesan (id_produk), KEY id_pesan (id_pesan), CONSTRAINT FK_pesan FOREIGN KEY (id_produk) REFERENCES produk(id_produk), CONSTRAINT FK_Pesan2 FOREIGN KEY (id_pesan) REFERENCES pesan (id_pesan)) ENGINE=InnoDB DEFAULT CHARSET=latin1;



 

 



 

CREATE TABLE faktur (id_faktur int (5) NOT NULL AUTO_INCREMENT, id_pesan int (5) NOT NULL, tgl_faktur date NOT NULL, PRIMARY KEY (id_faktur), KEY id_pesan (id_pesan), CONSTRAINT faktur_ibfk_1 FOREIGN KEY (id_pesan) REFERENCES pesan (id_pesan)) ENGINE=InnoDB DEFAULT CHARSET=latin1;



 

CREATE TABLE kuitansi (id_kuitansi int (5) NOT NULL AUTO_INCREMENT, id_faktur int (5) NOT NULL, tgl_kuitansi date NOT NULL, PRIMARY KEY (id_kuitansi), KEY FK_kuitansi (id_faktur), CONSTRAINT FK_kuitansi FOREIGN KEY (id_faktur) REFERENCES faktur (id_faktur)) ENGINE=InnoDB DEFAULT CHARSET=latin1;



 

Show tables;



!Sekian, Terimakasih Gan!

Komentar

Postingan populer dari blog ini

KRIPTOGRAFI SIMETRIS DAN ASIMETRIS

BASIS DATA FUNCTION DAN STORED PROCEDURE