Contoh Penerapan Relasi Many to Many

Relasi many to many adalah sebuah relasi dimana satu atau lebih baris data di tabel A dapat berhubungan dengan satu atau lebih baris data di tabel B. Untuk menerapkan relasi many to many dibutuhkan tabel perantara (pivot table).

Meskipun begitu banyak relasi yang dapat kita selesaikan menggunakan relasi one to many. Namun ada beberapa kondisi yang harus kita selesaikan dalam bentuk many to many. Oleh karenanya kita harus mengetahui apa yang membedakan antara relasi one to many dengan many to many.

Perhatikan 2 tabel di bawah ini.

Membuat relasi many to many

Jika kita membuat sebuah sistem seperti komunitas atau forum diskusi maka seorang user yang telah terdaftar dapat memilih beberapa grup atau forum yang ada.

Bisa saja 1 user yang suka memancing juga tertarik dunia sepakbola. Selanjutnya sebuah forum memancing tentu harus bisa diisi banyak user agar forum yang dibuat mempertemukan user yang terdaftar berdasarkan pilihan yang dibuat.

Kondisi ini jika diterapkan ke sebuah database maka membuat relasi many to many adalah solusi dari kebutuhan di atas.

Baca Juga

Apa itu Relasi Database ? Deskripsi dan Jenis – Jenisnnya

Relasi antara tabel user dan forum di atas akan menjadi many to many jika dirancang seperti gambar di bawah ini:

contoh relasi many to many
Contoh Relasi Many to Many

dari gambar di atas dapat kita lihat user dengan id u001 memilih forum memancing dan sepakbola. Selanjutnya forum memancing di isi oleh user u001 dan user 003. Kondisi ini merupakan bentuk penerapan dari relasi many to many. Dimana tabel user_forum adalah tabel perantara(pivot table) yang menghubungkan tabel user dan tabel forum.

Perbedaan Relasi Many to Many dan One to Many

Dari contoh di atas dapat kita ketahui perbedaan antara relasi many to many dan one to many yaitu:

1. Relasi many to many dalam pembuatannya membutuhkan tabel perantara sementara tebel one to many tidak membutuhkan.

2. Pada many to many Tabel yang menjadi pilihan (tabel forum) bisa dipilih dalam bentuk multi oleh user dan satu pilihan dapat dipilih oleh banyak user pula. jika tidak dibuatkan pivot tabel maka bentuk ini akan berbentuk one to many.

Leave a comment