Minggu, 01 Januari 2012

Fungsi Dari View Dan Join

 FUNGSI DARI VIEW DAN JOIN

Pada kesempatan kali ini saya akan memposting fungsi dari VIEW dan JOIN serta macam-macam JOIN beserta contoh Querynya, pertama-tama saya akan mejelaskan fungsi dari VIEW dan JOIN:
  • View
Didalam SQL Server, dapat dilakukan hasil dari pemilihan melalui perintah SELECT dibuatkan kedalam sebuah tabel virtual, tabel virtual tersebut diberi nama VIEW. Dallam VIEW dapat menampilkan gabungan dari 1 atau lebih tabel dalam sebuah database, sehingga dengan VIEW dapat membantu mempercepat pencarian data dengan perintah SELECT yang sering dilakukan kepada 1 atau lebih tabel.
contoh source codenya adalah:  
create view "nama view" as select "apa saja yang ingin ditampilkan" from "tabel yang telah dibuat sebelumnya"; 
nb:  (yang bertanda petik, dalam pengerjaannya jangan mengikutsertakan tanda petik)
  • Join
Salah satu fitur SQL yang paling berguna adalah kemampuan untuk menggabungkan tabel dengan query-query yang mendapatkan kembali data. Join adalah mekanisme yang digunakan untuk menghubungkan beberapa tabel dengan statemen SELECT (dan karena itu disebut join). Dengan menggunakan sintaks khusus, beberapa tabel dapat digabungkan sehingga dapat dihasilkan sekumpulan
output tunggal, dan join menghubungkan record-record yang benar disetiap tabel. 
Macam-macam Bentuk Penggabungan (Join)
  1. Inner Join
Penggunaan relasi INNER JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan record – record yang bersesuaian saja. Sedangkan syntak ON berfungsi menampilkan kedua table lengkap dengan semua fieldnya tanpa menyingkat tampilan field yang direlasikan dengan menampilkan satu kali (field yang berelasi ditampilkan dua kali yaitu saat di deret table pertama lalu di deret table kedua)

select*from [Tabel_1] inner join [Tabel_2] on [Tabel_1].[field yang berelasi] = [Tabel_2].[field yang berelasi];
Inner Join – Using
Sama seperti keterangan diatas, penggunaan relasi INNER JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan record – record yang bersesuaian saja. Sedangkan syntak USING berfungsi menampilkan kedua table dengan field yang direlasikan hanya ditampilkan satu kali di awal table atau terletak paling kiri.
select*from [Tabel_1] inner join [Tabel_2] using([field yang berelasi]);
  1. Outer Join
Kegunaan utamanya adalah untuk mencari record-record, artinya record yang ada disebuah tabel, tetapi tdak ad pasangannya ditabel lain. Outer join akan menghasilkan semua data dari sebuah tabel dan membatasi data dari tabel lainya. SQL Server mempunyai dua outer join yaitu: left outer join dan right outer join.
  1. Left Outer Join – ON
Penggunaan relasi LEFT OUTER JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan semua record meskipun tidak bersesuaian dengan table yang lain dengan jumlah record tergantung jumlah record sebelah KIRI. Sedangkan syntak ON berfungsi menampilkan kedua table lengkap dengan semua fieldnya tanpa menyingkat tampilan field yang direlasikan dengan menampilkan satu kali (field yang berelasi ditampilkan dua kali yaitu saat di deret table pertama lalu di deret table kedua).
select*from [Tabel_1] left outer join [Tabel_2] on [Tabel_1].[field yang berelasi] = [Tabel_2].[field yang berelasi];
  1. Right Outer Join – ON
Penggunaan relasi RIGHT OUTER JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan semua record meskipun tidak bersesuaian dengan table yang lain dengan jumlah record tergantung jumlah record sebelah KANAN dan table kedua (dituliskan setelah join) ditampilkan lebih dulu setelah field yang direlasikan. Sedangkan syntak ON berfungsi menampilkan kedua table lengkap dengan semua fieldnya tanpa menyingkat tampilan field yang direlasikan dengan menampilkan satu kali (field yang berelasi ditampilkan dua kali yaitu saat di deret table pertama lalu di deret table kedua).
select*from [Tabel_1] right outer join [Tabel_2] on [Tabel_1].[field yang berelasi] = [Tabel_2].[field yang berelasi];
  1. Union
Penggunaan relasi UNION adalah untuk menggabung hasil dari syntak LEFT OUTER JOIN dengan RIGHT OUTER JOIN .
select*from [Tabel_1] natural left outer join [Tabel_2]
union
select*from [Tabel_1] natural right outer join [Tabel_2];
  1. Staight Join
Penggunaan relasi STRAIGHT JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan semua record meskipun tidak bersesuaian dengan table yang lain dengan jumlah record adalah hasil kali jumlah record table pertama dengan jumlah record tapi.
select*from [Tabel_1] straight join [Tabel_2];
  1. CROSS JOIN
Cross Join merupakan bentuk penggabungan yang paling sederhana, tanpa ada kondisi. Penggunaan relasi CROSS JOIN sama dengan STRAIGHT JOIN yaitu untuk menampilkan kedua table yang direlasikan dengan menampilkan semua record meskipun tidak bersesuaian dengan table yang lain dengan jumlah record adalah hasil kali jumlah record table pertama dengan jumlah record tapi kedua seperti pada gambar di bawah.
SELECT field1,field2 FROM Tabel1 CROSS JOIN tabel2;
  1. Full Join
Penggunaan FULL JOIN adalah untuk menampilkan kedua table dengan record – record yang bersesuaian saja. Field yang berelasi ditampilkan sekali di awal table atau paling kiri.
select*from [Tabel_1] full join [Tabel_2] using([field yang berelasi]);

Tidak ada komentar:

Posting Komentar