Sabtu, 19 Juli 2014

Tugas 3 Macam-macam Join

Membuat table dan relasi antar table sesuai dengan EERD topic

Sistem Penjualan Barang


Macam-macamjoinpadamysql
1.      Inner Join
Inner Joinadalahperintahuntukoperasipenggabungan yang paling umumdigunakandanbiasanyadikatakansebagai default join-type.Inner Join hanyamenampilkan data yang benar-benarterdapat di dalamtabel yang salingdihubungkan.
Misalnyamenggabungkantabel Customers dengan Orders, maka field penghubung yang digunakanadalahCustomerID. Dalamteknik INNER JOIN makahasil yang ditampilkanhanya record yang memilikiCustomerIDsama di keduatabeltersebut. Apabilaterdapatcustomr yang CustomerIDnyatidakditemukan di tabel Orders maka data tersebuttidakditampilkan.
Berikutinicontohperintah yang menggunakan syntax inner join :
SELECT CompanyName, OrderID, OrderDate
FROM Customers
INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID

Perintah SQL tersebutmengambil field CompanyNamedaritabel Customers, sedangkan field OrderIDdanOrderDatediambildaritabel Orders.Kunciutamapenggabunganduatabeltersebutadalah keyword INNER JOIN dengankriteriaCustomerID.

INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID
Antaranamatabeldengannama field dibatasidengantandatitik (.) misalnyaOrders.CustomerID. Tujuanpencantumannamatabeltersebutadalahmenghindariambiguitas yang mengakibatkan error apabilaperintahtersebutdieksekusi. KarenaCustomerIDtersebutterdapat di keduatabelmakanamatabelharusdicantumkan agar dapatdiidentifikasisecaraunik field mana yang dimaksud. 

2.      Cross Join
Sebuahpenggabungan yang meliputilebihdarisatutabeltanpasyaratapapun.Hasildari Cross Join akanmenghasilkanprodukKartesian.
3.      Outer Join
Outer join akanmnghasilkansemua data darisebuahtabeldanmembatasi data daritabellainnya. Terdapat 3 alteryaitu
1.  Left Outer Join :Semuabarisdari table yang diacudari table sebelahkiri
2. Right Outer Join :Semuabarisdari table yang diacudari table sebelahkanan
3.  Full Outer Join :Semuabaris yang dihasilkandarikedua table
Kegunaan outer join adalahuntukmencari record – record piatu, artinya record yang ada di sebuah table tapitidakmemilikipasangan di table lain.

4.      Straight Join
Straight Join merupakanpengganti keyword JOIN pada MySQL yang digunakanuntuk "memaksa" proses join table darikiri (LEFT) kekanan (RIGHT).



2. Planning Join
TabelPembelian                                               Table BeliPutus

Id_pembelian
Tanggal






Id_pembelian
Id_barang
quantity
harga













Inner Join
Id_pembelian
id_brng
quantity
harga
Id_pembelian
Tanggal



















Keterangan:
Memilihuntukmenampilkan data daridua table yang berisi data sesuaidengansyaratdengan kata lain table kirimendapatpasangan table kanan.
SELECT field FROM table_1 (tb_pembelian),inner join tb_2 (tb_beliputus) on kondisi
Contoh:
SELECT *FROM tb_pembelian inner join tb_beli_putus  ONCustomers.CustomersID=Orders.CustomersID
Left join memunculkansemuabaristabelpertama, bahkanjikatidakadapasangannya di tabelkedua. Jikaadabarispadatabelpertama yang tidakada.Pasangannyapadatabelkedua, makaakandimunculkanjuga.

TabelPembelian                                                           
Id_pembelian
Kd_return
tgl
n.brng return
Quantity return
















TabelBarangbisa return
Id_pembelian
Tanggalpembelian





Right Outer Join
Id_pembelian
Tglpembelian
Id_pembelian
Kd_return
Tgl_returnbrng
N.brng return
Quantity return






















Keterangan:
Untuk table pegawaidan table barangkitamenggunakanright outer join yaitumenggabungkansatu field table barang yang berada di sebelahkanankedalam field table sebelahkiri table barang.
SELECT field FROM table_pembelianRIGHTJOIN table_pembelian on kondisiatau primary key
Contoh:
SELECT Orders.OrderID, Employees.FirstNameFROM OrdersRIGHT JOIN EmployeesON Orders.EmployeeID=Employees.EmployeeIDORDER BY Orders.OrderID;
Akan memunculkansemuabaristabelkeduaatau table barangbisa return, bahkantidakadapasangannya di tabelpertamaatau table pembelian. Jikaadabarispadatabelkedua yang tidakadapasangannyapadatabelpertama, makaakandimunculkan.



Tidak ada komentar:

Posting Komentar