loading...

Thursday 4 May 2017

Laporan PBD 10

LAPORAN  PRATIKUM
PERANCANG BASIS DATA

Dosen : SRI NOFRI WIHANDARI,S.pd.,M,Kom
Di Susun Oleh :
IZSAL QURLINAS AFANDI
16214027
AKADEMI KOMUNITAS NEGERI PADANG PARIAMAN
UNIVERSITAS  NEGERI  PADANG
TEKNIK ELEKTRONIKA
2017




A.    TEORI SINGKAT

Perintah SQL dapat digunakan untuk menampilkan data dari 2 tabel atau lebih. Antara tabel tersebut harus memiliki penghubung yaitu primary key dan foreign key. Dengan menggunakan kriteria penghubung tersebut Anda dapat menampilkan data dari beberapa tabel secara konsisten.
1.      INNER JOIN
Penggabungan tabel dalam perintah SQL menggunakan keyword JOIN. Jenis penggabungan tabel yang pertama adalah INNER JOIN. INNER JOIN hanya menampilkan data yang benar-benar terdapat di dalam tabel yang saling dihubungkan.
2.      LEFT JOIN
Berbeda dengan INNER JOIN yang hanya menampilkan irisan data dari tabel yang digabungkan, maka LEFT JOIN akan menampilkan data dari tabel yang disebutkan terlebih dahulu.
3.      RIGHT JOIN
Perintah RIGHT JOIN merupakan kebalikan dari LEFT JOIN, yaitu menampilkan semua isi tabel yang disebutkan kedua dalam perintah join. Dalam contoh di atas, apabila LEFT JOIN diganti RIGHT JOIN maka semua isi tabel jadwal akan ditampilkan semuanya.
B.     LANGKAH KERJA
1.      INNER JOIN
Misalnya Anda menggabungkan tabel dosen dengan jadwal, maka field penghubung yang digunakan adalah kode dosen karena merupakan Primary Key di tabel dosen dan menjadi Foreign Key di tabel jadwal. Hubungan kedua tabel tersebut adalah One to Many, dimana satu dosen dapat memiliki banyak jadwal matakuliah yang berulang.
Dalam teknik INNER JOIN hasil yang ditampilkan hanya record yang memiliki kode dosen sama di kedua tabel tersebut. Apabila terdapat dosen yang kode dosenna tidak ditemukan di tabel jadwal maka data tersebut tidak ditampilkan.
Contoh: menampilkan nama dosen berikt dengan jadwal mengajarnya (hari, jam, dan
    lokal).
Contoh Query:
mysql> SELECT nama_dosen, hari, jam, lokal FROM dosen INNER JOIN jadwal ON dosen.kode_dosen=jadwal.kode_dosen;
Hasilnya:

Data tersebut diperoleh dari tabel asal: Tabel Dosen dan Tabel Jadwal yang isi kedua  tabel tersebut terlihat pada gambar berikut:

2.      LEFT JOIN
Misalnya untuk menampilkan data dosen beserta jadwal mengajarnya, maka apabila tabel dosen disebutkan terlebih dahulu, semua data nama dosen akan ditampilkan baik yang sudah memiliki jadwal ataupun yang belum.
Contoh: menampilkan nama dosen berikut dengan jadwal mengajarnya (hari, jam, dan
    lokal).
Contoh query:
mysql> SELECT nama_dosen, hari, jam, lokal FROM dosen LEFT JOIN jadwal ON dosen.kode_dosen=jadwal.kode_dosen;
Hasilnya:

Berdasarkan gambar di atas, data yang dihasilkan, dilihat dari sisi tabel dosen, yang mana semua data yang tersimpan pada tabel dosen akan ditampilkan meskipun data tersebut bernilai NULL.
3.      RIGHT JOIN
Misalnya untuk menampilkan data dosen beserta jadwal mengajarnya
Contoh: Menampilkan nama dosen berikut dengan jadwal mengajarnya (hari, jam, dan
    lokal).
Contoh Query:
mysql> SELECT nama_dosen, hari, jam, lokal FROM dosen RIGHT JOIN jadwal ON dosen.kode_dosen=jadwal.kode_dosen;
Hasilnya:

C.    EVALUASI DAN PENUGASAN
1.      Buatlah query untuk menampilkan data sebagai berikut:
a.       Nama dosen, hari, jadwal dan lokal yang diurutkan berdasarkan urutan nama dosen, dengan menggunakan INNER JOIN.
Hasilnya :


 


b.      Nama dosen, hari, jadwal dan lokal yang diurutkan berdasarkan jadwal mengajar, dengan menggunakan LEFT JOIN.
hasilnya :



c.       Nama dosen, hari, jadwal dan lokal yang diurutkan berdasarkan urutam lokal, dengan menggunakan RIGHT JOIN.



d.      Nama mahasiswa, nama dosen, tanggal mulai dan tanggal selesai untuk bimbingan proyek akhir, yang diurutkan berdasarkan nama dosen.
             * Jika menggunakan INNER JOIN, hasilnya :



           * Jika menggunakan  LEFT JOIN, hasilnya :



                 * Jika menggunakan RIGHT JOIN, hasilnya :



 

2.      Jelaskanlah kegunaan dari INNER JOIN, LEFT JOIN, dan RIGHT JOIN.
jawab :



3.      Jelaskan kenapa parameter JOIN tersebut diperlukan, apa kelebihan dan kekurangannya.
jawab :



4.      mysql> select nama_mahasiswa, nama_dosen from dosen INNER JOIN proyek_akhir on dosen.kode_dosen=proyek_akhir.kode_dosen;
Apa yang terjadi dari hasil query tersebut? Jelaskan!
jawab :

Lihat seperti gambar berikut : 

No comments: