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";
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)
- 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]);
- 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.
- 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];
- 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];
- 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];
- 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];
- 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;
- 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