Query Language
Query Language (Bahasa Query)
Bahasa Query dikelompokkan menjadi dua, yaitu:
• Bahasa Prosedural
Pengguna meminta sistem untuk melakukan serangkaian operasi terhadap basis data dalam rangka mendapatkan informasi atau data yang diinginkan.
• Bahasa Non-Prosedural
Pengguna menunjukkan informasi atau data yang diinginkan tanpa menyatakan suatu prosedur tertentu untuk memperoleh informasi atau data tersebut.
• Bahasa Prosedural
Pengguna meminta sistem untuk melakukan serangkaian operasi terhadap basis data dalam rangka mendapatkan informasi atau data yang diinginkan.
• Bahasa Non-Prosedural
Pengguna menunjukkan informasi atau data yang diinginkan tanpa menyatakan suatu prosedur tertentu untuk memperoleh informasi atau data tersebut.
• Aljabar Relasional
• Kalkulus Relasional
Keduanya biasa disebut Bahasa Query Formal (Formal Query Language).
Aljabar Relasional
- Bahasa Query yang didasarkan pada operasi-operasi dalam Aljabar Relasional merupakan bahasa query yang Prosedural
- Memanfaatkan satu atau beberapa tabel/relasi basis data sebagai masukan dan menghasilkan sebuah tabel/relasi basis data yang baru sebagai keluarannya
1. Operasi tunggal (unary operation), karena hanya beroperasi pada sebuah tabel/relasi basis data saja, yaitu :
- Select
- Project
- Rename
2. Operasi biner (binary operation), karena dapat beroperasi pada sejumlah tabel/relasi basis data, yaitu :
- Cartesian-Product
- Union
- Set-Difference
Operasi Select
Operasi select berfungsi untuk menyeleksi tuple-tuple yang memenuhi predikat yang diberikan dari sebuah tabel relasi. Simbol sigma “σ” digunakan untuk menunjukkan operasi select. Predikat muncul sebagai subscript dari σ dan kondisi yang diinginkan yang ditulis dalam predikat. Argumen diberikan dalam tanda kurung yang mengikuti σ dan berisi tabel relasi yang dimaksud.
Contoh penggunaan operasi select :
σNIM = 5302411159(NILAI)
Perintah diatas berarti memilih tupel-tupel dari tabel NILAI yang memiliki atribut NIM bernilai 53024611159 Hasil dari operasi diatas adalah :
53024611159 | MK013 | 90 | 95 |
53024611159 | KD032 | 88 | 80 |
Operasi Project
Operasi project berfungsi untuk memilih nilai atribut-atribut tertentu saja dari sebuah tabel relasi. Simbol phi “Π” digunakan untuk menunjukkan operasi project. Predikat muncul sebagai subscript dari Π dan hanya nama atribut yang diinginkan yang ditulis dalam predikat. Argumen diberikan dalam tanda kurung yang mengikuti Π dan berisi tabel relasi yang dimaksud.
Contoh penggunaan operasi project :
Π KDMK,SKS(MKUL)
Perintah diatas berarti memilih nilai atribut KDMK dan SKS dari tabel MKUL. Hasil dari operasi diatas adalah :
MK021 | 2 |
KD132 | 3 |
MK122 | 2 |
Operasi Union
Operasi union berfungsi untuk mendapatkan gabungan nilai atribut dari sebuah tabel relasi dengan nilai atribut dari tabel relasi lainnya. Simbol “∪” digunakan untuk menunjukkan operasi union. Operasi union bernilai benar bila terpenuhi 2 kondisi, yaitu : Derajat dari 2 tabel relasi yang dioperasikan harus sama dan domain dari atribut yang dioperasikan juga harus sama.
Contoh penggunaan operasi union :
Misalkan terdapat 2 tabel relasi bernama ASLABSI dan ASLABTI seperti dibawah :
ASLABSI
NIM | Nama | Rombel |
5302411159 | Syarifudin Zuhri | 04 |
5302411360 | Harry Potter | 07 |
5302411289 | Darco Malfoy | 06 |
NIM | Nama | Rombel |
5302411290 | M. Ali Nurdin | 06 |
5302411159 | Syarifudin Zuhri | 04 |
5302411405 | Soli Kurniawan | 08 |
Π Nama(ASLABSI) ∪ Π Nama(ASLABTI)
Perintah diatas berarti menggabungkan hasil dari operasi project terhadap tabel ASLABSI dengan hasil dari operasi project terhadap tabel ASLABTI. Hasil dari operasi diatas adalah :
Syarifudin Zuhri |
Harry Potter |
M. Ali Nurdin |
Darco Malfoy |
Soli Kurniawan |
Operasi Set Difference
Operasi set difference berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi, tapi tidak ada dalam tabel relasi lainnya. Simbol “-“ digunakan untuk menunjukkan operasi set difference.
Contoh penggunaan operasi set difference :
Π Nama(ASLABSI) – Π Nama(ASLABTI)
Perintah diatas berarti mendapatkan nilai atribut Nama yang terdapat di tabel ASLABSI, tapi tidak terdapat di tabel ASLABTI. Hasil dari operasi diatas adalah :
Darco Malfoy |
Harry Potter |
Operasi Cartesian Product
Operasi cartesian product berfungsi untuk mengkombinasikan informasi yang ada dalam 2 tabel relasi dan menghasilkan sebuah tabel relasi yang baru. Simbol “x“ digunakan untuk menunjukkan operasi set difference.
Contoh penggunaan operasi cartesian product :
ASLABTI x MKUL ⟹ tabel relasi baru
Perintah diatas berarti mengkombinasikan seluruh tupel yang ada pada tabel ASLABTI dengan tabel MKUL. Hasil dari operasi diatas adalah :
5302411290 | M. Ali Nurdin | 06 | MK021 | P. Basis Data | 2 |
5302411290 | M. Ali Nurdin | 06 | KD132 | SIM | 3 |
5302411290 | M. Ali Nurdin | 06 | MK122 | Pancasila | 2 |
5302411159 | Syarifudin Zuhri | 04 | MK021 | P. Basis Data | 2 |
5302411159 | Syarifudin Zuhri | 04 | KD132 | SIM | 3 |
5302411159 | Syarifudin Zuhri | 04 | MK122 | Pancasila | 2 |
5302411405 | Soli Kurniawan | 08 | MK021 | P. Basis Data | 2 |
5302411405 | Soli Kurniawan | 08 | KD132 | SIM | 3 |
5302411405 | Soli Kurniawan | 08 | MK122 | Pancasila | 2 |
Komentar
Posting Komentar