Pegertian VIEW
Pengertian VIEW JOIN danbeberapaJenisfungsionalnya :
View adalah salah satu object database, yang
secara logika merepresentasikan sub himpunan dari data yang
berasal dari satu atau lebih table. Kegunaan dari view adalah :
- Membatasi akses database
- Membuat query kompleks secara mudah
- Mengijinkan independensi data
- Untuk menampilkan view (pandangan) data yang
berbeda dari data yang sama.
View dapat dibuat dengan perintah CREATE VIEW.
Subquery dapat di cantumkan dalam CREATE VIEW, tapi subquery yang digunakan tidak boleh berisiklausa
.
SintakpenulisanVIEW :
CREATE VIEW [OR REPLACE] nama_view [(kolom1, kolom2,
...)] AS SELECT kolom_yang_dimaksud FROM nama_tabel WHERE kondisi GROUP BY
kolom1,kolom2,… HAVING kondisi_Aggregate ORDER BY kolom_tertentu
Perintahpembuatan table view :
SQL> CREATE VIEW myview
AS SELECT empno EMPLOYEE_NO, NAMA nama, GAJI sal,
pekerjaan JOB
FROM emp
WHERE deptno=20;
Pengertian Join
Join adalah operasi untuk mengambil
informasi dari 2 tabel atau lebih dalam 1 waktu. Dengan join baris data dari
satu tabel dihubungkan dengan baris data pada tabel lain berdasarkan kolom
tertentu. JOIN
dalammysql adalah Salah satu fitur SQL yang paling berguna untuk menggabungkan table
dengan query – query yang mendapatkan kembali data.
Macam – macam JOIN :
Macam – macam JOIN :
1. InnerJoin
Inner
join adalah join yang hanya akan menampilkan baris untuk data yang memiliki nilai
yang sama/ yang ada pasangannya pada field kunci dengan tabel yang berelasi. Inner
join merupakan jenis join yang paling umum yang dapat digunakan pada semua database.
Jenis ini dapat digunakan bila ingin merelasikan dua set data yang ada di tabel,
letak relasinya setelah pada perintah ON pada join.
Bentuk baku perintah
inner join :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> INNER JOIN
<tabel2> ON <key.tabel1> = <key.tabel2>
2.
OuterJoin
Outer
join akan menghasilkan sebuah data dari sebuah tabel dan membatasi data
dari tabel lainnya. Terdapat 3 tipe Outer join yaitu Left Join, Right Join, dan
Full Join.
§ Left Outer Join
Operasi Join tipe ini akan menampilkan semua isi tabel sisi kiri, walaupun data di
pasangan joinnya yg disisi kanan nilainya tidak sama ataupun bernilai null.
Bentuk perintah Left Outer Join :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> LEFT JOIN
<tabel2> ON<key.tabel1> = <key.tabel2>
§ Right Outer Join
Operasi
Join tipe ini akan menampilkan semua isi tabel sisi Kanan, walaupun data di
pasangan joinnya yg disisi kiri nilainya tidak sama ataupun bernilai null.
Bentuk perintah Right Outer Join :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> RIGHT JOIN
<tabel2>ON <key.tabel1> = <key.tabel2>
§ Full Join / Full OuterJoin
Penggunaan
FULL JOIN adalah untuk menampilkan kedua table dengan record – record yang
bersesuaian saja. Field yang berelasi di tampilkan sekali di awal table atau paling
kiri. Lihat gambar di bawah.Full Join adalah Gabungan dari left dan right
outer join
Syntak :
select*from [Tabel_1] full
join [Tabel_2] using([field yang berelasi]);
Penggunaan FULL JOIN jugabisasepertigambar di bawah.
Syntak :
select*from [Tabel_1] full
join [Tabel_2];
3. Cross
Join
Cross join kadang kala disebut juga sebagai CartesianProduct. Bila menggunakan crossjoin,
makahasil dari cross join akan menciptakan hasil yang di dasarkan pada semua kemungkinan kombinasi baris dalam keduaset data. Dengan demikian, jumlah baris yang dikembalikan adalah N✕M, dimana N adalah jumlah baris dalam kumpulan data Adan M jumlah baris dalam kumpulan data B. Jelas,jumlah baris dalam cross join dapat menjadi sampah.
Bentuk perintah dari Cross Join adalah
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> CROSS JOIN
<tabel2>
atau
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1>,
<tabel2>
4.
Union
Join
Union di
dukung oleh MySQL mulai dari
versi4.0 .Pemakaian union dapat menyederhanakan perintah persyaratan OR yang bertingkat .Bila
dalam
sebuah query menghasilkan
pemakaian perintah
OR yang lebih
dari satu sehingga dapat membuat
bingung, sebagai gantinya
digunakan perintah UNION.
Agar
lebih jelas, perhatikan contoh berikut ini.
Contoh
:
Tampilkan
nip, nama dan gaji dari pegawai yang bekerja di bagian akuntansi dan SDM.
(anggap saja perintah sql yang digunakan sudah kompleks)Bila menggunakan perintah OR,
maka perintah sqlnya akan seperti di bawah ini :
selecti.nip,i.nama,p.gaji from
info pribi join pekerjaan p oni.nip=p.nip where p.kode_bag="3" or
p.kode_bag="4";
Tetapi perintah OR
dapat diganti dengan perintah
UNION danbila di
jalankan akan menghasilkan hal yang sama.
(selecti.nip,i.nama,p.gaji from
infopribi join pekerjaan p oni.nip=p.nip where p.kode_bag="3") UNION
(selecti.nip,i.nama,p.gaji from
infopribi join pekerjaan p oni.nip=p.nip where p.kode_bag="4")
Tidak ada komentar:
Posting Komentar