Jumat, 18 Juli 2014

VIEW JOIN

Pengertian VIEW JOIN dan Beberapa jenis fungsinya :

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 dicantumkan dalam
CREATE VIEW, tapi subquery yang digunakan tidak boleh berisi klausa .

Sintak penulisan VIEW :
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

Perintah pembuatan table view  :
SQL> CREATE VIEW myview
AS SELECT empno EMPLOYEE_NO, NAMA nama, GAJI sal, pekerjaan JOB
FROM emp
WHERE deptno=20;





JOIN

Cara kerja  join ialah dengan mencari kecocokan kolom tertentu pada sebuah tabel dengan kolom

tertentu pada tabel lain, kemudian menampilkan hasilnya sebagai satu set data gabungan. Secara
garis besar, terdapat 3 macam join, yaitu INNER JOIN, LEFT JOIN dan RIGHT JOIN. Namun,
selain dari 3 macam tersebut, terdapat tambahan beberapa varian tergantung dari RDBMS
(Relation Database Manajemen System)  yang digunakan.



Macam –  macam Join :


  • INNER JOIN


hanya akan ditampilkan baris baris yang satu sama lain memiliki kecocokan .

Contoh : SELECT a.Nama, b,penyakit FROM pasien a INNER JOIN penyakit b ON b.id = a.id;
+------+---------+ | Nama | Penyakit | +------+---------+ | Koni | Asma | | Huni | Mual | | Buri | Pusing | +------+---------+





  • OUTER JOIN


Dengan outer join, tabel akan digabungkan satu arah, sehingga memungkinkan ada data yang

NULL (kosong) di satu sisi. Sebagai contoh, kita akan menggabungkan tabel pelanggan dan
pesan dimana kita akan menampilkan daftar pelanggan yang pernah melakukan pemesanan
(transaksi).






  • OUTER JOIN DIBAGI MENJADI 2 ,Yaitu..


LEFT JOIN dan RIGHT JOIN. Berikut ini bentuk umum dan contohnya:

Left Join
akan menampilkan semua isi tabel sisi kiri , walaupun data di pasangan joinnya yang disisi
kanan nilainya tidak sama ataupun berisi null.
Contoh : SELECT a.Nama, b.penyakit FROM pasien a LEFT JOIN penyakit b ON b.id = a.id;
+------+---------+ | Nama | Penyakit | +------+---------+ | Koni | Asma | | Huni | Mual | | Buri | Pusing | | Orui | NULL | +------+---------+





  • RIGHT JOIN


ini hanya kebalikan left join , akan menampilkan semua isi tabel sisi kanan, walaupun data di

pasangan joinnya  yang di sisi kiri nilainya tidak sama ataupun berisi null.
Contoh : SELECT a.Nama, b.penyakit FROM pasien a RIGHT JOIN penyakit b ON b.id = a.id;
+------+---------+ | Nama | Penyakit | +------+---------+ | Koni | Asma | | Huni | Mual | | Buri | Pusing |
+------+---------+




  • FULL JOIN


akan menampilkan semua isi tabel sisi kiri walaupun data di pasangan joinnya yang disisi kanan

nilainya null atau sebaliknya
Contoh : SELECT a.Nama, b.Penyakit FROM pasien a FULL JOIN JK b on a. id = b.id;
+------+---------+ +------+----------+ | Nama | Penyakit| | Nama | JK | +------+---------+ +------+----------+ | Koni | Asma | | Koni | Laki | | Huni | Mual | | Huni | Perempuan | | Buri | Pusing | | Buri | Laki | +------+---------+ +------+----------+ Menjadi +------+---------+----------+ | Nama | Penyakit | JK | +------+--------------------+ | Koni | Asma | Laki | | Huni | Mual |Perempuan | | Buri | Pusing | Laki | +------+---------+----------+


  • 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];





  • STRAIGHT 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.

Tidak ada komentar:

Posting Komentar