Minggu, 12 Oktober 2014

Tugas Evaluasi 2



Selamat siang kawan, have a nice day ya. Hehe..

Okelah, tanpa basa-basi lagi langsung aja kita menuju ke evaluasi perbandingan antara MySQL dan Postgre yang tentunya membahas tugas praktikum yang minggu ini. Setelah minggu kemaren mendapat tugas evaluasi perbandingan tentang relasi tabel antara kedua DBMS, sekarang gantian mengevaluasi tentang operator dasar. Saat ane ngerjain menggunakan Postgre pada praktikum di lab semua terasa berjalan baik-baik aja tuh, ya memang ada aslabnya yang bisa ditanyain macem-macem. Hehe..

Lanjut lagi, baru kemudian minggu ini dapat lagi tugas individu menggunakan MySQL. Awalnya sih, sama aja bentuk-bentuk querynya. Tapi sampai REGEXP, EXCEPT, dan INTERCEPT muncul lah perbedaan. Lalu nyoba browsing-browsing dan nanya temen-temen. Eh ternyata memang beda, itu terletak pada strukturnya.

Dimulai dari yang REGEXP. Disini jika menggunakan Postgre tinggal langsung aja pake tanda “ ~ “, itu sudah bisa dieksekusi querynya. Lain ceritanya jika menggunakan MySQL, pada MySQL operator regexp pake query REGEXP juga. Tidak akan bisa cukup dengan pake tanda “ ~ “, malah akan terjadi error. Tapi untuk simbol-simbolnya kurang lebih sama. Berikut beberapa contoh simbolnya yang sering digunakan.


Simbol
Keterangan
.
Mewakili karakter apa saja
[ ]
Kumpulan karakter. Misalkan [abc] akan cocok dengan ‘a’, ‘b’, atau ‘c’. Juga bisa menggunakan jangauan, contohnya [a-z] akan cocok dengan seluruh huruf. [0-9] akan cocok dengan seluruh angka.
*
Cocok dengan 0 atau lebih karakter sebelumnya. Misalkan ‘a*’ berarti akan cocok dengan seluruh kata yang mengandung 0 atau lebih a.
^
Menandakan awalan dari sebuah kata
$
Menandakan akhiran dari sebuah kata

Kemudian berlanjut ke EXCEPT. Pada Postgre, dengan mengetik EXCEPT pada SQLshell bisa langsung dieksekusi querynya. Berbeda dengan MySQL, perintah tersebut tidak bisa dieksekusi justru terjadi error karena struktur query tersebut tidak ada pada MySQL. Sehingga digunakanlah operator NOT IN dengan menambahkan juga operator kondisi WHERE. Jadi, querynya seperti berikut.

SELECT namakolom1 FROM namatabel1 WHERE namakolom1 NOT IN (SELECT namakolom2 FROM namatabel2);

Yang terakhir INTERSECT. Sama dengan EXCEPT, perintah ini berlaku di Postgre tetapi tidak berlaku di MySQL. querynya hampir sama juga dengan EXCEPT, tinggal menghilangkan NOT nya saja. Berikut querynya.

SELECT namakolom1 FROM namatabel1 WHERE namakolom1 IN (SELECT namakolom2 FROM namatabel2);

Dari sini ane juga menemukan kekurangan dari MySQL yang menjadi kelebihan dari Postgre. Tapi ini menurut ane sendiri, yang mungkin berbeda dengan pengguna yang lain. Jadi kekurangan dan kelebihannya terletak pada kesederhanaan query. Pada MySQL harus mengetik REGEXP pada query REGEXP dan menggunakan operator IN atau NOT IN disertai kondisi pada INTERCEPT atau EXCEPT, itu yang menurut ane terasa rumit. Beda halnya Postgre yang terasa sangat simpel, cukup mengetik tanda “ ~ “ pada query REGEXP dan hanya cukup mengetik INTERCEPT atau EXCEPT itu saja sudah bisa langsung jalan.

Hmm, sekilas itulah evaluasi perbandingan minggu ini yang bisa ane jelasin. Melanjutkan evaluasi minggu lalu ternyata terbukti kan, tidak selamanya yang ada pada Postgre itu sama dengan yang ada pada MySQL. Untuk selanjutnya kita bahas lagi pada kesempatan berikutnya. Apabila ada kurangnya mohon maaf. Semoga bermanfaat and finally thanks. See yaa..:)

Tidak ada komentar:

Posting Komentar