OPERATOR RELASI



Bahasa query formal basis data relasionaladalahbahasauntukmemintainformasidari basis data. Sebelum basis data relasional, query terhadap basis data merupakantugas yang sangatsukar. Pemogramharusberususandenganskemafisik internal dari basis data.
Bahasa query relasionalmisalkan SQL (sructured query language) berbedadenganbahasapemrogramankonvensional. Di SQL, kitamenspesifikasikanproperti – propertiinformasi yang hendakdiambiltapitidakmencantumkanrincianalgoritmapengambilan. SQL adalahdeklaratif, yaitupada query dideklarasikaninformasi yang merupakanjawaban yang dikehendakibukancarakomputasi.Query kompleksyagdiperlukanpadakebanyakanaplikasinyatamemerlukanpengetahuanmendalammengenaibahasa da semantiknya. Bahasa query relasional formal merupakanbahasaantara yang digunakan basis data, yaitu SQL dikonversimenjadibahasarlasional formal sehinggadapatditerapkansekumpulaninformasiuntukmemperoleh query paling efisien. 


 

Terdapatduajenisbahasaqueryrelasionalformalyangutama,yaitu:
1.RelasiAljabar.
2. RelasiKalkulus
RelasiAljabar

RelasiAljabarmerupakankumpulanoperasiterhadaprelasidimanasetiapoperasimenggunakansatuataulebihrelasiuntukmenghasilkansaturelasi yang barudantermasukkategoriproseduraldanjugamenyediakanseperangkat operator untukmanipulasi data.
Kodemendefinisikan operator relasiterdiridaridelapan operator, dimanadibagimenjadiduakelompoksebagaiberikut:
1. Operasitradisional, terdiridari Union, Intersection, Difference, dan Cartesian Product.
2. operasirelasionalkhusus, terdiridari Restrict, Project, Join, danDevide.

Untukkedelapan operator tersebutdiatas, akandiuraikansecaradetilsebagaiberikut :
OPERASI UNIONN
• Notasi : r s, dimana r s = {t|t r atau t s}, yaituberuparelasi yang anggota – anggotanyaadalah tuple-tuple yang berasaldari r atau s. Bilaada yang terduplikasi, cukupsatusaja yang dipertahankan.
• Syaratoperasidapatdilangsungkan
1. rdan s harusmemilikicacahkolom (arity) yang sama
2. masing-masingkolomdarikeduarelasiharuskompatibel, artinyanilai-nilai di dalamnyaharusberasaldari domain yang sama.
Contohoperasi union:
Diberikanrelasi (tabel) A
S SNAME STATUS CITY
S1 Aris 20 Semarang
S4 Eko 20 Semarang
Relasi (Tabel) B
S SNAME STATUS CITY
S1 Aris 20 Semarang
S2 Heni 10 Jakarta
Maka A B adalahmenghasilkanrelasibaru :
S SNAME STATUS CITY
S1 Aris 20 Semarang
S2 Eko 20 Semarang
S4 Heni 10 Jakarta
 OPERASI SET INTERSECTIONECTION)
• Notasi : r s, dimana r s = {t|t r atau t s}, yaituberuparelasi yang anggota-anggotanyaadalah tuple-tuple yang adadalam r danadadalam s.
• Syaratoperasidapatdilangsungkan
1. rdan s harusmemilikicacahkolom (arity) yang sama
2. masing-masingkolomdarikeduarelasiharuskompatibel,artinyanilai-nilai di dalamnyaharusberasaldari domain yang sama.
Ilustrasi : (hasilrelasibaruadalahbagian yang diberiwarna)

Contoh (a)Opersai Intersection:
Relasi r dan s, maka r s adalahmenghasilkanrelasibaru :
OPERASI DIFFERENCE (MINUS)
• Notasi : r − s, dimana r − s = {t|t r atau t s}, yaituberuparelasi yang anggota-anggotanyaadalah tuple-tuple yang berasaldari r tetapitidak di dalam s.
• Syaratoperasidapatdilangsungkan
1. rdan s harusmemilikicacahkolom (arity) yang sama
2. masing-masingkolomdarikeduarelasiharuskompatibel, artinyanilai-nilai di dalamnyaharusberasaldari domain yang sama.
Ilustrasi : (hasilrelasibaruadalahbagian yang yangtidakdiberiwarna)


Contoh (b) operasiminus:
Maka r – s adalahmenghasilkanrelasibaru:
OPERASI CARTESIAN PRODUCT (x/TIMES)
Notasi ; rxs, dimanarxs = {pq|p r dan q s}, yaituhasilnyaberuparelasi/table yang diperolehdenganmemasangkansetiap tuple padarelasipertamadengansetiap tuple padarelasikedua. banyaknyakolomsamadenganjumlahkolomkeduarelasi / table banyaknyabaris / record samadenganperkalianbanyaknya record padarelasipertamadan record padarelasikedua.
Ilustrasi :
Contoh (c) operasi times:
(a) Relasi r dan s (b) Relasirxs
 OPERASI RESTRICTION ( /SELECT)
adalahoperasiuntukmenyeleksitupel – tupel yang memenuhisuatupredikat, kitadapatmenggunakan operator perbandingan (<,>,>=,<=,=,#) padapredikat. Beberapapredikatdapatdikombinasikanmenjadipredikatmanjemukmenggunakanpenghubung AND (
Ù ) danOR ( Ú ).

OPERASI PROJECTION ( )
• untukmengambilkolom-kolomtertentudarisuaturelasi/table
• Notasi : daftaratribut (r ) dimanadaftaratributadalahatribut-atribut yang adapadarelasi/tabel r yang akanditampilkan
• Hasiloperasiberupakolom-kolom yang adapada r denganmenghilangkansemuakolom yang tidakadadalamdaftaratribut
• bilaadabaris yang sama (terduplikasi), cukupdituliskansekali (hilangkansisanya)

 Natural Join (JOIN)
adalahoperasiuntukmenggabungkanoperasi selection dancartesian-product dengansuatukriteriapadakolom yang sama.
Ilustrasi :
ContohOperasikompositsebelumnyaadalahcontohoperasi JOIN.
conditional join adalah join yang berdasarpadakriteriatertentu yang bukanoperasipersamaannilaiatribut
inner join adalah join yang berdasarpadakriteriatertentuberupapersamaannilaiatribut
natural join adalahoperasi inner join yang dilakukanpadasemuaatribut yang samadarikeduarelasi (namadandomainnya). Padatabel/relasihasil, kolom-kolom yang samahanyamunculsekali.


KALKULUS RELASIONAL
Padakalkulusrelasionaltidakterdapatpendeskripsianpemrosesansuatuquerisepertihalnyapadaaljabarrelasional, akantetapicukupdenganmendefinisikanapa yang diinginkan. Ada duabentukkalkulusrelasionalyaknikalkulusrelasionaltupel yang pertamakalinyadiusulkanoleh E.F. Codd, sedangkan yang keduaadalahkalkulusrelasional domain yang diusulkanLacroixdanPirotte.
1.KalkulusRelasionalTupel
Kalkulusrelasionaltupellebihberorientasipadatupeldimanaoperasiiniditujukanuntukmemperolehtupel-tupel yang predikatnya ‘benar’.
Ekspresi : { t
ç P(t) }
t : tupel, P : predikatterhadap t
Bentuk-bentukdaripredikat :
1. S
Î R ; dimana S : variabel, R : relasi
2. S[x]
q U[y] ;dimana S dan U : variabeltupel , x dan y : atribut-atribut
q : operator aritmatika
3. S[x]
qC ; C : konstanta
Operator tambahan : operator penghubungyakni
Ù (and), Ú(or)
Contohqueri : diketahuiskemarelasi DOSEN (Nip, Nama, Alamat, Kota, Jkel). Dicariinformasimengenaidosen yang berada di kota Bogor.
{ t
çÎ DOSEN Ù t[Kota] = ‘Bogor’ }
2.KalkulusRelasional Domain
Berbedadengankalkulusrelasionaltupel, kalkulusrelasional domain berorientasipada domain denganmenggunakanvariabel-variabel domain.
Ekspresi : {
ç P }
Dimana xi : variabel domain, sedangkan
P : predikatterhadap x.
Bentuk-bentukdaripredikat:
1.
Î R ; R : relasi
2. x
q y
3. x
q C
Contohqueri : diketahuiskemarelasi DOSEN (Nip, Nama, Alamat, Kota, Jkel). Dicariinformasimengenaidosen yang mempunyai NIP 87000650.
{
ç P } Î DOSEN Ù n=’87000650’ }
3. Query By Example(QBE)
QBE Pertama kali dikembangkanolehZloofpadatahun 1975. Untukmengekspresikanpermintaandaripemakaidilakukandenganmemasukkannilaicontohkedalam template queri yang menyerupaisebuahtabel. Operator perintahantaralain : P. (Print), D. (Delete), I. (Insert), U. (Update). Operator aritmatika :
<, =, >, ³, ¹, £
Contoh : diketahuiskemarelasi PEGAWAI (NIP,Nama,Alamat,Gaji,Kddiv)
a. Inginditampilkaninformasipegawaidengan Nip 102871.

PEGAWAI NIP NAMA ALAMAT GAJI KODEDIV
P. 102871
b. Inginditampilkannamadanalamatpegawai yang mempunyaigajilebihbesardari 500.000,-
PEGAWAI NIP NAMA ALAMAT GAJI KODEDIV
P. P. >500000
5.2.4 Query Language (QUEL)
QUEL merupakanbahasapendefinisiandanmanipulasi data untuk INGRES (Ineractive Graphics and Retrieval System), dikembangkansejaktahun 1970-an.
Perintah-perintahpadaQuel :
1. Pendefinisian data antara lain :
CREATE, INDEX, MODIFY, DESTROY
2. Manipulasi data antara lain :
RETRIEVE, APPEND, DELETE, REPLACE
Sintaks RETRIEVE :
- RETRIEVE [ UNIQUE] tabel.kolom
WHERE [fungsi/ANY] kondisi
SORT BY kolom;
- RANGE OF inisial/huruf IS (namatabel);
Contohqueri :
1. Ingindibuatinisialdaritabel PEGAWAI dan DIVISI
RANGE OF P IS PEGAWAI, D IS DIVISI;
2. Inginditampilkannamadanalamatpegawai yang gajinyalebihbesardari 500.000,-
RETRIEVE (P.Nama, P.Alamat)
WHERE P.Gaji> 500000
5.3. PersamaandanPerbedaanRelasionalAljabardanRelasiKalkulus
1.Relasionalkalkulusdanrelasionalaljabardikelompokanpadabahasa yang “Relationally Complete”, artinya :Setiapekspresirelasionalkalkulusdapatdireduksipadabentukrelasionalaljabar yang ekuivalendenganekspresitersebut.
2. Ekspresirelasionalkalkulusdiselesaikandenganmenggunakanpredikatkalkulus, sedangkanekspresirelasionalaljabardiselesaikandenganmemanfaatkan operator padarelasisebagaioperannya.


Komentar

Postingan populer dari blog ini

MAKHLUK HIDUP DALAM EKOSISTEM ALAMI

ASYNCRONOUS