XII. BASIS DATA

 Basis Data

Select Multi Table

Sudut Pandang Basis Data

     Basis data bukan hanya sekedar penyimpanan data secara elektronis dengan bantuan komputer. Artinya tidak semua bentuk penyimpanan data secara elektronis bisa disebut basis data. Kita dapat menyimpan dokumen berisi data dalam file teks dengan program pengolah kata, file spread sheet dan lain-lain, tetapi tidak dapat disebut sebagai basis data. Karena di dalamnya tidak ada pemilahan dan pengelompokkan data sesuai jenis dan fungsi data, sehingga akan menyulitkan pencarian data kelak. Hal yang sangat ditonjolkan dalam basis data adalah pengaturan, pemilahan, pengelompokkan, dan pengorganisasian data yang akan disimpan sesuai fungsi dan jenisnya. Pemilahan, pengelompokan, pengorganisasian dapat berbentuk sejumlah file atau tabel terpisah atau dalam bentuk pendefinisian kolom- kolom field-field data dalam setiap file dan tabel.

Data Selection

     Adapun untuk melihat data (Selection), Query yang digunakan adalah SELECT diikuti beberapa pernyataan khusus yang berhubungan dengan tabel yang diseleksi. Pada dasarnya, SELECT merupakan perintah DML (Data Manipulation Language) untuk menghasilkan recordset dengan mengekstrak data dari database. Perintah SELECT ini sering dipakai dan memiliki bentuk yang kompleks. Bentuk sederhana dari SELECT adalah sebagai berikut.

SELECT select_list [INTO table_new] FROM table_source

[WHERE search_condition] [GROUP BY group_by_expression]

[HAVING search_condition] [ORDER BY order_expression [ASC | DESC] ]

 

     Misalnya memiliki tabel nilai_siswa dengan field (kolom) nama, kelas, mapel, nilai, dan keterangan. Maka perintah SQL untuk menampilkan khusus pada field nama, mapel, dan nilai adalah sebagai berikut.

 

SELECT Nama, mapel, nilai FROM nilai_siswa

 

     Namun jika ingin menampilkan seluruh field pada tabel Customer1 dapat menggunakan perintah asterik (*) sebagai berikut.

 

SELECT * FROM nilai_siswa

Select Multitable

     Pada pembuatan suatu aplikasi, terkadang memerlukan tampilan data yang tidak hanya berasal dari 1 (satu) tabel, namun bisa dari beberapa tabel sekaligus. Misalnya ingin menampilkan nama buku yang dipinjam oleh siapa dan siapa petugasnya. Dari contoh tersebut, kita harus dapat menggabungkan minimal dua tabel, yaitu peminjaman, buku dan anggota. Atau menampilkan data peminjaman lengkap dengan petugas yang meminjakan, sehingga harus menggabungkan tabel peminjaman, buku, petugas dan anggota. Data yang tersimpan dalam database dapat bervariasi dalam hal jumlah dan tingkat kompleksitasnya.

Fungsi Select Multiple Table

     Select multiple table berfungsi untuk menampilkan data yang berhubungan dari dua buah tabel, misalnya ingin menampilkan data nm_siswa dan nm_kelas tiap siswa. Pada tabel siswa, nama kelas siswa ditunjukkan oleh id_kelas agar dapat melihat langsung nm_kelas tiap siswa, maka perintah select multiple table dapat digunakan. Pada syntax from nama tabel siswa ditulis lebih dahulu dibandingkan nama tabel tb_kelas.

     Hal tersebut menyebabkan data ascending menurut table tb_kelas. Misalnya data dalam tb_kelas pada urutan teratas adalah data BSD. Jika nama table tb_kelas ditulis lebih dulu maka data yang ditampilkan akan ascending sesuai dengan tabel siswa.

PERINTAH JOIN

     Pada SQL terdapat sebuah perintah join yang berfungsi untuk menghubungkan tabel yang satu dengan tabel yang lain yang saling berhubungan atau berelasi. Tujuannya adalah untuk menampilkan beberapa data dari table yang berbeda dengan menggunakan satu perintah.

Perintah Join dikategorikan menjadi sebagai berikut:

A. INNER JOIN

     Data yang akan ditampilkan pada perintah inner join hanya data yang memiliki pasangan saja, sedangkan data pada tabel yang tidak memiliki sebuah kesamaan maka data tersebut tidak akan ditampilkan. Inner Join identik dengan sebuah perintah yang digunakan untuk menampilkan sebuah data atau record dengan menghubungkan dua tabel atau lebih dalam satu perintah.

Format penulisan yang digunakan adalah sebagai berikut.

SELECT * FROM table_1 INNER JOIN table_2 ON table_1.PK = table_2.FK

B. OUTER JOIN

     Tabel yang akan digabungkan dengan Outer Join menjadi satu arah, sehingga terdapat data NULL (kosong) di satu sisi. Misalnya menggabungkan tabel customer1 dan dt_pesan untuk menampilkan daftar customer1 yang pernah melakukan pemesanan (transaksi). Secara umum, Outer Join terbagi menjadi sebagai berikut.

1)Left Join

LEFT OUTER JOIN dapat ditulis menggunakan dua cara, yaitu dengan klausa LEFT OUTER JOIN atau cukup dengan klausa LEFT JOIN saja. Left Join (left outer join) identik dengan suatu perintah yang digunakan untuk mengembalikan semua nilai dari tabel kiri ditambah dengan nilai dari tabel kanan yang sesuai (atau null jika tidak ada nilai yang sesuai).

2)Right Join

Secara mendasar, fungsi dari Right Join hampir sama dengan Inner Join, hanya pada Right Join akan membuat sebuah parameter pada sebelah kanan jika data pada table terdapat data atau record yang kosong atau tidak berelasi maka akan berisi NULL.

C. FULL JOIN

     Penggunaan Full Join akan menghasilkan baris data jika ada data yang sama pada salah satu tabel. Bentuk umum Full Join adalah sebagai berikut:

SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2 column_name

    Perhatikan bentuk implementasi sebagai berikut:

SELECT reg.nama,reg.email,order.no_order FROM reg FULL JOIN order ON reg.id=order.id ORDER BY reg.nama

 


Komentar

Postingan populer dari blog ini

XII. MATERI SELECT MULTI TABLE