About

Sabtu, 26 Maret 2016

Perintah MySQL Lanjutan(Menggabungkan 2 table sekaligus)

Assalamualaikum wr.wb

Hari ini saya masih tetap mempelajari mysql namun pada bab kali ini saya membahas tentang Perintah MySQL Lanjutan.
Nah mari kita simaqk tentang penjelasan berikut ini !

Perintah SELECT dari Banyak Tabel dengan JOIN
       Di dalam suatu RDBMS tentunya sudah menjadi suatu kewajaran jika dalam satu database dapat terdiri dari beberapa tabel. Masing-masing tabel tersebut berhubungan satu sama lain atau dengan kata lain memiliki relasi. Relasi antar- tabel dapat berupa relasi 1-1, 1-M, atau M-N. Sebagai contoh terlihat pada gambar pemodelan data konseptual (class diagram) di atas. Tabel pelanggan berhubungan dengan pesan, pesan dengan barang, dsb.
Pada praktisnya, terkadang kita juga memerlukan tampilan data yang tidak
hanya berasal dari 1 (satu) tabel, namun bisa dari beberapa tabel sekaligus.
Contohnya, dari class diagram diatas, kita ingin menampilkan nama pelanggan
berikut transaksi yang pernah dilakukannya. Dari contoh tersebut, kita harus bisa menggabungkan minimal dua tabel, yaitu pelanggan dan pesan.
Untuk menggabungkan 2 (dua) atau lebih tabel, kita dapat menggunakan
bentuk perintah JOIN.

Berikut ini adalah contoh dari penggabungan antara 2 tabel dalam mysql :

 1 . Sebelum kita menggabungklan dua tabel dalam mysql, alangkah baiknya kita harus membuat terlebih dahulu database yang akan digunakan untuk proses tersebut.
Masuk terminal ketikkan :

*Sudo su 
*Password
*mysql -u root -p
*Password 

2. Kemudian ketikkan perintah berikut ini :


 3.jika database sudah berhasil dibuat kemudian  langkah berikutnya lihat hasil database.


4. Mulailah membuat table pada database tersebut.


 5. Tampilkan table diatas dengan cara seperti ini :




 #Hal ini bertujuan agar kita mengetahui aopa saja isi dalam table database yang sudah kita buat tadi.

6. Lalu mulailah mengisi isi table dalam database dengan perintah insert into nama database anda values(sesuai selera anda).

*Pengisian 1

*Pengisian 2

*Pengisian 3

7.Tampilkan hasilnya seperti gambar dibawah ini :



8. Selanjutnya silahkan membuat table baru dengan nama create table pesan. Hal ini bertujuan agar nantinya table 1 bisa digabungkan dengan table pesan ini.

9.Masukkan isi dalam table pesan ini dengan did_pesan, id_pembeli, tgl_pesan date saja karena dalam sebulah pesan ini hanya dibutuhkan nomor id dan tgl saja jtidak mecantumkan nama.


10. dan inilah hasil dari table pesan diatas :




11. Disini saya menambahkan 1 isi lagi dalam sebuah table pembeli dan juga pesan hal ini bertujuan untuk nanti jika kita ingin menggabungkan 2 table pda fungsi left join agar bisa ditampilkan nilai NULL karena pada awal tadi saya tidak memberi nilai seperti contoh dibawah ini berbeda dengan cara diatas :
*Perintah pada table pembeli

*Hasil :

*Perintah pada table pesan :


Hasil :



Nah sekarang kita mulai masuk pada cara menggabungkan 2 table dalam sebuah mysql  :

 1.Inner Join
 Dengan inner join, tabel akan digabungkan dua arah, sehingga tidak ada
data yang NULL di satu sisi.
Sebagai contoh, kita akan menggabungkan tabel
pelanggan dan pesan dimana kita akan menampilkan daftar pelanggan yang
pernah melakukan pemesanan (transaksi). Isi tabel pelanggan dan pesan adalah
sebagai berikut :

*Tabel pelanggan (hanya ditampilkan id, nama dan email).



2.LEFT JOIN
Berbeda dengan hasil sebelumnya (inner join), penggunaan left join akan
menampilkan juga data pelanggan dengan id P0003, walaupun pelanggan
tersebut belum pernah bertransaksi. Dan pada kolom id_pesan dan tgl_pesan
untuk pelanggan P0003 isinya NULL, artinya di tabel kanan (pesan) pelanggan
tersebut tidak ada.

*Perintah SQL untuk menggabungkan tabel pelanggan dan pesan pada bentuk left join:


3.RIGHT JOIN
Dengan right join, tabel yang menjadi acuan adalah tabel sebelah kanan
(tabel pesan), jadi semua isi tabel pesan akan ditampilkan. Jika data pelanggan
tidak ada di tabel pelanggan, maka isi tabel pesan tetap ditampilkan.




Sekian dulu sharing dari saya kali ini semoga bermanfaat.
Selamat mencoba. Terima kasih :)


Wassalamualaikum wr.wb

Tidak ada komentar:

Posting Komentar