-->

iklan banner

Seputar Fungsi Intersect Dan Except Di Mysql Dan Alternatif-Nya

Seputar fungsi INTERSECT dan EXCEPT di MYSQL dan Alternatif Seputar fungsi INTERSECT dan EXCEPT di MYSQL dan Alternatif-nya

Cukup kaget awalnya dengan bahan ini, secara aku langsung gres kali ini mendengar istilah INTERSECT dan EXCEPT di mysql. Karna memang selama ini aku merasa belum pernah memakai fungsi tersebut, untuk UNION sendiri sudah tidaklah abnormal mungkin.

Maksud dari INTERSECT ini merupakan sebuan fungsi yang berkhasiat untuk menampilkan irisan dari dua tabel atau lebih. Lalu untuk EXCEPT, dari namanya sudah ketahuan, tanpa aku kasih tahu pun sudah sanggup tahu apa maksudnya. Singkatnya untuk EXCEPT ini menyerupai mirip kecerdikan NOT IN atau mungkin fungsi LEFT JOIN.

Cara penggunaan dan syarat penggunaan fungsi INTERSECT dan EXCEPT menyerupai mirip UNION, dimana salah satu syaratnya ialah, jumlah dan nama field harus sama.

Misal kita punya tabel dengan nama mahasiswa dimana tabel tersebut mempunyai field nama, alamat dan kelas. Maka dikala kita akan mengunakan fungsi UNION, EXCEPT, atau pun INTERSECT, tabel lawannya harus mempunyai jumlah dan nama field yang sama menyerupai tabel mahasiswa.

Tapi jikalau kau coba memakai fungsi EXCEPT atau INTERSECT di mysql itu tidak akan berfungsi, kenapa?

Alasannya alasannya yaitu fungsi EXCEPT dan INTERSECT itu bukan fungsi murni dari mysql, karna memang fungsi itu tidak ada di mysql.

Tapi kau tak perlu kwatir, disini aku punya query alternatif untuk duduk masalah fungsi INTERSECT atau pun EXCEPT.

ALTERNATIF INTERSECT

Inti dari fungsi inteersect ini, menyerupai yang sudah aku katakan tadi, yaitu untuk menampilkan irisan, dimana data yang sama atau cocok saja yang akan di tampilkan. Pada masalah ini kau sanggup memakai kombinasi INNER JOIN dan DISTINCT.

Disini aku punya tabel dengan nama mahasiswa dengan field :
  • id int(11) auto_increment primary key
  • nama varchar(75)
  • alamat text
  • kelas varchar(20)
Lalu untuk tabel keduanya yaitu table siswa dengan filed :
  • id int(11) auto_increment primary key
  • nama varchar(75)
  • alamat text
  • kelas varchar(20)
Jika mengacu pada kedua tabel di atas, maka untuk query INTERSECT-nya kurang lebih menyerupai ini :
 SELECT DISTINCT id, nama FROM mahasiswa INNER JOIN siswa USING(id) 

Kamu sanggup mengotak-ngati sesuai yang kau inginkan, namun kuncinya disini ada di DISTINCT dan INNER JOIN.

ALTERNATIF EXCEPT

Pada EXCEPT ini kita masih memakai tabel yang di pakai di pembahasan INTERSECT, yaitu tabel mahasiswa dan siswa. Jika mengacu pada kedua tabel tersebut maka untuk alternatif query EXCEPT-nya kurang lebih menyerupai ini :

Versi NOT IN
 SELECT mhs.id  FROM mahasiswa mhs     WHERE mhs.id NOT IN  (     SELECT sw.id      FROM siswa sw      WHERE sw.id = 1 ); 

Versi LEFT JOIN
 SELECT mhs.id  FROM mahasiswa mhs     LEFT JOIN siswa sw ON mhs.id = sw.id WHERE IFNULL(sw.id, 0) != 1 

Kurang lebih menyerupai itu, biar kau sanggup memahaminya, dan bermanfaat ilmunya. Makara intinya, menyerupai yang sudah aku katakan di awal, kalau fungsi INTERSECT dan EXCEPT itu tidak ada di MYSQL.

Mungkin pembahasan kali ini aku cukupkan hingga disini dulu, aku pamit undur diri, terima kasih.

Tschuss...


Sumber http://www.kang-cahya.com

Berlangganan update artikel terbaru via email:

0 Response to "Seputar Fungsi Intersect Dan Except Di Mysql Dan Alternatif-Nya"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel