Teknik Penggabungan Tabel pada MySQL


     Sebelum membaca artikel yang saya tulis kali ini, ada baiknya kalian para pembaca blog saya untuk membaca terlebih dulu tentang MySQL. Di artikel sebelumnya, saya telah membahas mengenai MySQL dengan judul Tips Akses MySQL Secepat Kilat. Di kesempatan kali ini, kembali lagi saya akan menuliskan artikel yang tentunya masih berhubungan dengan MySQL, namun lebih ke arah salah satu tekniknya, dengan judul artikel Teknik Penggabungan Tabel pada MySQL.

     MySQL memiliki kemampuan untuk melakukan proses penggabungan dari dua tabel atau lebih yang berguna untuk mendapatkan informasi yang kita inginkan. Proses penggabungan tabel tersebut dinamakan JOIN. Dalam penggabungan dari dua tabel atau lebih ada syarat yang harus dipenuhi, yakni : 
 ·      Setiap kolom disebutkan dalam bentuk.
 ·      Tabel-tabel yang dilibatkan dalam query perlu disebutkan dalam klausa form dengan antar tabel dipisahkan oleh tanda baca koma.
      ·      Kondisi dalam WHERE menentukan jenis penggabungan tabel (join) yang akan terbentuk.

     Proses penghubungan tabel bisa kita lakukan dengan menggunakan pernyataan SELECT agar mencari data dari dua atau lebih tabel dalam sebuah database. Klausa ON bisa untuk mengurangi jumlah baris sedangkan klausa WHERE bisa mengurangi berapa banyak jumlah dari baris yang telah ada. Statement SELECT dapat mendeskripsikan suatu proses menghubungkan.
Berikut ini adalah beberapa tipe join yang telah tersedia dalam MySQL :
·      Inner Join
Inner join merupakan sebuah type hubungan yang bersifat default. Ini dispesifikasikan hanya baris-baris dari tabel yang sesuai dengan kondisi pada klausa ON yang akan ditampilkan. Sedangkan baris data yang tidak sesuai dengan kondisi tidak akan ditampilkan. Untuk menspesifikasikan hubungan ini digunakan keyword JOIN dan menggunakan keyword ON untuk mengidentifikasikan sebuah kondisi pencarian. 

Gambar 1. Contoh INNER JOIN


·      Full Outer Join
Hubungan dengan tipe data FULL OUTER JOIN merupakan cara menghubungkan baris-baris di dalam tabel dasar dengan spesifikasi kondisi hubungan, entah baris-baris yang diambil sesuai dengan kondisi hubungan atau tidak. FULL OUTER JOIN digunakan dalam konteks tidak ditemui oleh kondisi hubungan. Untuk itu, sebagai gambaran yang lebih jelas dalam menjalankan contoh statement FULL OUTER JOIN, Anda perlu mempunyai tabel-tabel yang datanya belum dihubungkan dengan data pada tabel lain
·      Left Outer Join
Ketika menghubungkan tabel dengan keyword JOIN, tabel akan dispesifikasikan sebagai tabel kanan dan tabel kiri. Tabel kiri adalah tabel yang letaknya di sebelah kiri keyword JOIN. Begitu pula sebaliknya, LEFT OUTER JOIN merupakan tipe hubungan yang menghasilkan data-data yangsesuai dengan kondisi ditambah dengan data-data yang tidak sesuai dengan kondisi yang berasal dari tabel sebelah kiri
·      Right Outer Join
RIGHT OUTER JOIN merupakan kebalikan dari tipe hubungan LEFT OUTER JOIN, yaitu menghasilkan baris-baris data yang sesuai dengan kondisi yang berada pada tabel sebelah kanan keyword JOIN
·      Cross Join
Cross Join merupakan bentuk penggabungan yang paling sederhana. Dengan cross join ini kita tidak diharuskan menulis klausa WHERE dan suatu kondisi pencarian. Hasil dari tipe hubungan cross join ini adalah setiap baris yang terletak di bagian tabel kiri yang ajan terhubung dengan setiap baris yang terletak di bagian tabel kanan. Jumlah dari baris hasil query sendiri yang dimaksud adalah hasil dari perkalian jumlah baris pada tabel kiri dengan tabel di kanan.

Gambar 2. Contoh CROSS JOIN (bagian 1)

Gambar 3. Contoh CROSS JOIN (bagian 2)


·      Straight Join
Operator STRAIGHT JOIN sebenarnya memiliki fungsi yang hampir mirip dengan cross join, yaitu menampilkan dua tabel atau lebih yang memiliki relasi atau hubungan. Yang membedakan operator straight join dengan cross join adalah bahwa pada straight join anda tidak dapat menggunakan pernyataan berkondisi.

Gambar 4. Contoh STRAIGHT JOIN (bagian 1)

Gambar 5. Contoh STRAIGHT JOIN (bagian 2)


·      Natural (Right, Left, Outer) Join
Operator terakhir dari keluarga JOIN adalah NATURAL. Fungsi operator ini adalah mempersingkat dan menggabungkan beberapa operator JOIN yang ada. Jadi, apabila kita memiliki beberapa kondisi dan kasus yang kompleks, anda dapat menggunakan operator ini sebagai penghubung.


Cukup sekian dan terima duit. Eh, maksudnya cukup sekian dan terima kasih, maaf khilaf, lagi KanKer (kantong kering). *maaf, malah curhat -_-
 Semoga ilmu yang saya bagikan dapat bermanfaat untuk kalian para pembaca blog saya dimanapun kalian berada, entah di dunia atau di akhirat.


TIPS AKSES MySQL SECEPAT KILAT

Sebelum menuliskan beberapa tips agar dapat mengakses MySQL dengan cepat, pastikan terlebih dulu bahwa kalian para pembaca artikel ini mengetahui dengan baik apa yang dimaksud dengan MySQL. Daripada nanti waktu kalian udah selesai baca tiba-tiba di akhir nanya, “Emang MySQL itu sejenis makanan atau apa, ya?” Duh, kan sia-sia, lebih baik kalian baca resep masakan aja siapa tau bisa ikutan acara Master Chef *maaf, iklan* -_-
Yuk, let’s begin...

                     
                                    Gambar 1. Icon dari MySQL

Siapa yang tidak mengenal MySQL? MySQL tentunya sudah tak asing lagi di telinga para pembuat dan pengakses database yang sehari-harinya sering kita jumpai di berbagai instansi, misal di perkantoran, kampus ataupun sekolah-sekolah. MySQL merupakan sebuah software open source untuk sistem manajemen database SQL (database management system) atau DBMS yang multi user dan multithread dengan pengguna sekitar 6 juta user yang telah ada di seluruh dunia. MySQL merupakan software gratis yang ada di bawah dari lisensi General Public License.


MySQL memiliki banyak keistimewaan, diantaranya yaitu yang pertama adalah dalam hal portabilitas. MySQL mampu diakses secara stabil oleh user dengan menggunakan berbagai macam operation systems misalnya seperti Linux, Windows, dan masih bayak lagi yang lainnya. Keistimewaan MySQL yang kedua adalah dalam hal safety. MySQL mempunyai banyak lapisan-lapisan keamanan demi mengamankan database yang telah dibuat oleh user. Keistimewaan selanjutnya adalah dalam hal MySQL mampu menangani database dengan jumlah skala yang bisa terbilang cukup besar yaitu lebih dari puluhan juta records, puluhan ribu tabel dan milyaran baris. Keistimewaan yang lain yaitu MySQL mampu melokalisasi. Maksud dari lokalisasi disini adalah MySQL dapat mendeteksi pesan kesalahan si user dengan menggunakan lebih dari 20 bahasa yang tersedia di dunia ini. Dan masih banyak lagi keistimewaan MySQL namun satu hal yang utama dan akan dibahas lebih lanjut dalam artikel ini adalah dalam hal keselarasan performa dan kecepatan akses database.

                

Gambar 2. Contoh Membuat Database dengan MySQL melalui Command Prompt

MySQL dalam hal keselarasan performa dan kecepatan akses database memiliki kecepatan akses yang bisa dikatakan menakjubkan asal mengetahui beberapa tips yang bisa memudahkan akses database tersebut, sesuai dengan judul artikel ini yaitu TIPS AKSES MySQL SECEPAT KILAT. Berikut ini adalah tips untuk meningkatkan kecepatan akses MySQL :

1.  Optimasi Perintah Query pada MySQL
          Untuk mendesain sebuah database, lokasi dari penggunaan fisik data seringkali tidaklah  dianggap penting oleh para user karena biasanya hanya desain logik lah yg diperhatikan  si user. Sedangkan sebenarnya untuk menampilkan hasil dari suatu query juga diperlukan  suatu searching yang melibatkan struktur fisik dalam hal penyimpanan suatu data yang  diinginkan. Optimasi query yang dimaksud adalah meminimalkan jalur searching atau  pencarian untuk menemukan data yang telah kita simpan pada lokasi fisik. Index dari  database bisa kita gunakan untuk meningkatkan kecepatan akses database yang telah  dibuat. Trik yang lebih spesifik untuk optimasi query pada MySQL yaitu sebisa mungkin menghindari penggunaan sub query, menggunakan sintaks yang jelas untuk pernyataan select, usahakan tidak menggunakan sintaks : SELECT * FROM (nama tabel); gunakan sintaks pencarian yang lebih spesifik untuk field yang hanya benar-benar dibutuhkan saja. Kemudian jika ingin menggabungkan suatu tabel, lebih baik menggunakan inner join daripada left join atau right join. 

2.  Tingkatkan Kapasitas Memori Server
         Meningkatkan memori dari server yang dimiliki akan membuat server mampu leluasa untuk melayani trofik yang tinggi. Jika memori yang telah ada bisa dikataklan tercukupi,  maka server tidak akan menggunakan memori cadangan dari swap file yang biasanya  telah berimplikasi untuk akses kecepatan database.

3.  Optimasi dan Kontrol MySQL
        Optimasi dan kontrol MySQL dapat dilakukan dengan beberapa cara yaitu bagi yang punya server sendiri dapat melakukan konfigurasi maksimal pada my.cf. Jika ingin menggunakan dan mengakses MySQL dalam waktu yang lama, lebih baik gunakan koneksi yang terus menerus daripada melakukan open-close koneksi dalam MySQL. Untuk mengurangi loading dari server dan memori dapat dilakukan dengan cara penghapusan memori jika telah selesai melakukan query. 

4.      Perbaiki Setting DNS
           Lakukan setting dari DNS kemudian masukkan ip address atau nama host client yang mengakses MySQL untuk  masuk ke dalam file / etc / hosts pada server MySQL  tersebut. Proses pengeditan file / etc / hosts ini bisa kita lakukan dengan menggunakan  webmin ataupun bisa juga dengan cara diedit langsung. Berdasarkan hasil dari pengujian  ini dapat disimpulkan bahwa tips ini mampu meningkatkan bahkan hampir 10 kali lebih  cepat dari yang biasa.

Cukup sekian tips untuk meningkatkan kecepatan akses database MySQL. Jika memang kecepatan akses yang diinginkan masih tidak sesuai dengan judul dari artikel ini, yaitu tidak secepat kilat, maka maafkanlah penulis karena penulis hanyalah manusia biasa yang tak luput dari salah, dosa, lebay, alay dan kekhilafan lainnya. Oke, silakan coba cara lain dan jangan lupa share ilmu dan pengalaman yang telah anda miliki. Indahnya berbagi :D 
 

Popular Posts

Text