13
5/12/2018 Bab6KalkulusRelasional-slidepdf.com http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 1/13 03 Januari 2012 BASIS DATA I/2009-GENAP 1 KALKULUS RELASIONAL BASIS DATA I/2009-GENAP Oleh Satrio Agung Wicaksono, S.Kom., M.Kom

Bab 6 Kalkulus Relasional

Embed Size (px)

Citation preview

Page 1: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 1/13

03 Januari 2012 BASIS DATA I/2009-GENAP 1

KALKULUS RELASIONAL

BASIS DATA I/2009-GENAP

Oleh

Satrio Agung Wicaksono, S.Kom., M.Kom

Page 2: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 2/13

MerupakanMerupakan alt ernatif alt ernatif untukuntuk aljabaraljabar relasionalrelasional..

MemungkinkanMemungkinkan kitakita menggambarkanmenggambarkan himpunanhimpunan

 jawaban  jawaban tanpatanpa menyatakanmenyatakan secarasecara eksplisit eksplisit bagaimanabagaimana jawaban jawaban t ersebut t ersebut dihitungdihitung..

MemilikiMemiliki pengaruhpengaruh yangyang besarbesar padapada desaindesain bahasabahasaqueryquery komersialkomersial sepertiseperti SQLSQL..

Varian Varian kalkuluskalkulus yangyang disajikandisajikan secarasecara detildetil disebut disebut TupleTuple RelationalRelational CalculusCalculus ((TRCTRC)) dimanadimana padapadaTRCTRC mengambilmengambil instaninstan (tuple)(tuple) sebagaisebagai nilainyanilainya..

03 Januari 2012 2BASIS DATA I/2009-GENAP

Definisi

KALKULUS RELASIONAL

Page 3: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 3/13

Variabel Variabel TupleTuple merupakanmerupakan variabelvariabel yangyang nilainyanilainya diambildiambil daridaritupletuple skemaskema relasirelasi t ert entut ert entu,, sehinggasehingga nilainilai yangyang dit entukandit entukanuntukuntuk satusatu variabelvariabel tupletuple t ert entut ert entu,, punyapunya jumlah jumlah dandan tipetipe fieldfieldyangyang samasama..

BentukBentuk tupletuple daridari queryquery kalkuluskalkulus relasionalrelasional ::

{{ TT || pp (( TT )) }}

dimanadimana TT adalahadalah sebuahsebuah variabelvariabel tupletuple dandan p(T)p(T) adalahadalahsebuahsebuah formulaformula yangyang menggambarkanmenggambarkan TT..

HasilHasil daridari queryquery adalahadalah himpunanhimpunan daridari semuasemua tupletuple tt dimanadimanaformulaformula p(T)p(T) mengevaluasimengevaluasi truetrue dengandengan TT == tt..

PenulisanPenulisan formulaformula p(T)p(T) adalahadalah intiinti daridari TRCTRC dandan padapada dasarnyadasarnyamerupakanmerupakan satusatu subset subset sederhanasederhana daridari FirstFirst OrderOrder LogicLogic..

03 Januari 2012 3BASIS DATA I/2009-GENAP

Tuple Relasional Calculus

KALKULUS RELASIONAL

Page 4: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 4/13

RelRel adalahadalah namanama relasirelasi..

RR dandan SS adalahadalah variabelvariabel tupletuple..

aa adalahadalah atribut atribut daridari RR..

bb adalahadalah atribut atribut daridari SS..

opop adalahadalah operatoroperator padapada himpunanhimpunan {{ <,<, >,>, =,=, ee,, uu,, {{ }}

Atomic Atomic formulaformula adalahadalah salahsalah satusatu daridari formulaformula berikut berikut ::

-- RR RelRel

-- RR..aa opop SS..bb

-- RR..aa opop constantconstant,, atauatau constantconstant opop RR..aa

03 Januari 2012 4BASIS DATA I/2009-GENAP

Syntax TRC Calculus

KALKULUS RELASIONAL

Page 5: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 5/13

FormulaFormula didefinisikandidefinisikan secarasecara rekursif rekursif untukuntuk menjadimenjadi salahsalah satusatu daridari

daftardaftar berikut b

erikut iniini,, di

manadi

mana pp dandan qq adalahadalah for

mulafor

mula dandan p(R)p(R)menggambarkanmenggambarkan formulaformula dimanadimana variabelvariabel RR munculmuncul ::

SemuaSemua atomicatomic formulaformula

pp,, pp qq,, pp qq,, atauatau pp qq

RR (( pp (( RR )) )),, dimanadimana RR adalahadalah variabelvariabel tupletuple

RR (( pp (( RR )) )),, dimanadimana RR adalahadalah variebelvariebel tupletuple

03 Januari 2012 5BASIS DATA I/2009-GENAP

Syntax TRC Calculus, Cont·d«

KALKULUS RELASIONAL

Page 6: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 6/13

SetiapSetiap variabelvariabel bebasbebas padapada sebuahsebuah formulaformula FF t erikat t erikat padapada nilainilai tupletuple..UntukUntuk penetapanpenetapan tupletuple t ert entut ert entu keke variabelvariabel,, dengandengan memperhatikanmemperhatikancontohcontoh database,database, FF dievaluasidievaluasi keke truetrue jika  jika salahsalah satusatu halhal berikut berikut 

t e

rpe

nuhit e

rpe

nuhi :: FF adalahadalah formulaformula atomicatomic RR RelRel,, dandan RR adalahadalah tupletuple didi dalamdalam

instanceinstance relationrelation RelRel..

FF adalahadalah komparasikomparasi RR..aa opop SS..bb,, RR..aa opop constantconstant,, atauatau constantconstantopop RR..aa,, dandan tupletuple yangyang dit entukandit entukan untukuntuk RR dandan SS mempunyaimempunyainilainilai   nilainilai fieldfield RR..aa dandan SS..bb yangyang menghasilkanmenghasilkan komparasikomparasi truetrue..

FF adalahadalah formform pp dandan pp bukanbukan truetrue,, atauatau formform pp qq,, dandan baikbaik ppdandan qq adalahadalah truetrue,, atauatau pp qq dandan salahsalah satunyasatunya adalahadalah truetrue,,atauatau formform pp qq dandan qq adalahadalah truetrue kapankapan sajasaja pp adalahadalah truetrue..

03 Januari 2012 6BASIS DATA I/2009-GENAP

Semantik TRC Query

KALKULUS RELASIONAL

Page 7: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 7/13

FF adalahadalah formform R(p(R))R(p(R)),, dandan adaada beberapabeberapa tupletupleuntukuntuk variabelvariabel bebasbebas padapada p(R)p(R),, t ermasukt ermasuk variabelvariabel RRyangyang membuat membuat formulaformula p(R)p(R) menjadimenjadi truetrue..

FF adalahadalah formform R(p(R))R(p(R)),, dandan adaada beberapabeberapa tupletupleuntukuntuk variabelvariabel bebasbebas padapada p(R)p(R) yangyang membuat membuat 

formulaformula p(R)p(R) truetrue tidaktidak pedulipeduli tupletuple apaapa yangyangdit entukandit entukan untukuntuk RR..

03 Januari 2012 7BASIS DATA I/2009-GENAP

Semantik TRC Query, cont·d«

KALKULUS RELASIONAL

Page 8: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 8/13

CustomersCustomers (( CustomerIDCustomerID,, ContactNameContactName,, Genre,Genre,

 Address, Address, City,City, Region,Region, Country,Country, ZIP,ZIP, PhonePhone ))

ProductsProducts (( ProductIDProductID,, ProductNameProductName,, UnitPriceUnitPrice,,UnitInStockUnitInStock,, UnitOnOrderUnitOnOrder ))

OrdersOrders (( OrderIDOrderID,, CustomerIDCustomerID,, OrderDat eOrderDat e ))

OrderOrder DetailDetail (( OrderIDOrderID,, ProductIDProductID,, UnitPriceUnitPrice,, Quantity,Quantity,Discount Discount ))

03 Januari 2012 8BASIS DATA I/2009-GENAP

Contoh Skema

KALKULUS RELASIONAL

Page 9: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 9/13

CariCari namanama barangbarang yangyang stoknyastoknya masihmasih adaada..

{{ A A || PP ProductsProducts (( A A..ProductNameProductName ==

PP..ProductNameProductName PP..UnitInStockUnitInStock >> 00)) }}

CariCari namanama barangbarang dandan hargaharga perper unit unit untukuntuk barangbarangyangyang stoknyastoknya masihmasih adaada..

{{ A A || PP ProductsProducts (( A A..ProductNameProductName ==

PP..ProductNameProductName A A..UnitPriceUnitPrice == PP..UnitPriceUnitPrice

PP..UnitInStockUnitInStock >> 00)) }}

03 Januari 2012 9BASIS DATA I/2009-GENAP

Contoh TRC Query

KALKULUS RELASIONAL

Page 10: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 10/13

CariCari namanama pelangganpelanggan yangyang pernahpernah memesanmemesan barangbarang padapadatanggaltanggal xx xx / / xxxx / / xxxxxxxx

{{ A A ||

CC

Custome

rsCustome

rs

OO

Orde

rsOrde

rs ((CC..Custome

rIDCustome

rID ==OO..CustomerIDCustomerID A A..ContactNameContactName == CC..ContactNameContactName

OO..OrderDat eOrderDat e == xx xx / / xxxx / / xxxxxxxx ) ) }}

CariCari namanama pelangganpelanggan yangyang pernahpernah memesanmemesan barangbarang dengandengankodekode barangbarang == xxx xxx..

{{ A A ||

CC

Custome

rsCustome

rs

OO

OrdersOrd

ers

DD

(Order(Ord

er D

etail)D

etail)

((CC..CustomerIDCustomerID == OO..CustomerIDCustomerID OO..OrderIDOrderID == DD..OrderIDOrderID

 A A..ContactNameContactName == CC..ContactNameContactName DD..ProductIDProductID == xxx ) xxx ) }}

03 Januari 2012 10BASIS DATA I/2009-GENAP

Contoh TRC Query, Cont·d«

KALKULUS RELASIONAL

Page 11: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 11/13

CariCari negaranegara yangyang pernahpernah memesanmemesan barangbarang yangyang berdiskonberdiskon dandan

 jumlah jumlah barangbarang yangyang dipesandipesan diatasdiatas 1010 unit unit..{{ A A || CC CustomersCustomers OO OrdersOrders DD (Order(Order Detail)Detail)

((CC..CustomerIDCustomerID == OO..CustomerIDCustomerID OO..OrderIDOrderID == DD..OrderIDOrderID

 A A..CountryCountry == CC..CountryCountry DD..Discount Discount >> 00 DD..QuantityQuantity >> 1010)) }}

03 Januari 2012 11BASIS DATA I/2009-GENAP

Contoh TRC Query, Cont·d«

KALKULUS RELASIONAL

Page 12: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 12/13

CariCari namanama barangbarang dandan sisasisa stokstok yangyang adaada untukuntuk barangbarang yangyang tidaktidak

memilikimemiliki diskondiskon atauatau hargaharga barangbarang / / unitnyaunitnya dibawahdibawah RpRp.. 5050..000000,,--..

{{ A A || PP ProductsProducts OO (Order(Order Detail)Detail) ((PP..ProductIDProductID ==

OO..ProductIDProductID A A..ProductNameProductName == PP..ProductNameProductName

 A A..UnitInStockUnitInStock == PP..UnitInStockUnitInStock ((OO..Discount Discount == 00 OO..UnitPriceUnitPrice <<

RpRp.. 5050..000000,,--)))) }}

03 Januari 2012 12BASIS DATA I/2009-GENAP

Contoh TRC Query, Cont·d«

KALKULUS RELASIONAL

Page 13: Bab 6 Kalkulus Relasional

5/12/2018 Bab 6 Kalkulus Relasional - slidepdf.com

http://slidepdf.com/reader/full/bab-6-kalkulus-relasional 13/13

03 Januari 2012 13

PE N U T U P

Terima kasih

BASIS DATA I/2009-GENAP