1 / 29

Aljabar Relasional

Aljabar Relasional. Materi pertemuan. Bahasa Query. Bahasa yang digunakan user untuk melakukan request informasi dari basis data Kategori Bahasa : Prosedural Non- prosedural. Bahasa Query. Bahasa query memungkinkan manipulasi dan pemanggilan data dari suatu basisdata .

maude
Download Presentation

Aljabar Relasional

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AljabarRelasional Materipertemuan

  2. BahasaQuery • Bahasa yang digunakanuseruntukmelakukanrequestinformasidari basis data • KategoriBahasa : • Prosedural • Non-prosedural

  3. Bahasa Query • Bahasa query memungkinkanmanipulasidanpemanggilan data darisuatubasisdata. • Terdapat 2 macambentukbahasa query” • AljabarRelasional • Aljabarrelasionaladalahsebuahbahasaquery prosedural yang terdiridarisekumpulanoperasidimanamasukkannyaadalahsatuatauduarelasidankeluarannyaadalahsebuahrelasibarusebagaihasildarioperasitersebut • Lebihbersifatoperasional, sangatbergunauntukmerepresentasikaneksekusiperencanaan • KalkulusRelasional • Memungkinkan user menggambarkanapa yang merekainginkan, tidakpadapadabagaimanacaramelakukankomputasiterhadapapa yang merekainginkantersebut. (tidakbersifatoperasional, tapibersifatdeklaratif). • Memahamialjabardankalkulusrelasionaladalahkuncimemahami SQL.

  4. AljabarRelasional • Merupakanbahasaprosedural • Operator dasar : • select • project • union • set difference • Cartesian product • Operator yang melibatkanduaataulebihrelasisebagaiinputakanmenghasilkansaturelasibarusebagaioutput.

  5. Operasi Dalam Aljabar Relasional • Operasi-operasidasardalamaljabarrelasionaladalah : • Select : mengambilsejumlahbaris data berdasarkankondisi yang diinginkan. • Project : Menghapuskolom yang tidakdikehendakidarirelasi • Union : Mendapatkan record yang terdapatdalamduatabeldengankolom yang sejenis. • set difference : mendapatkanrecord / field yang terdapatdalamsebuahtabel, tetapitidakterdapatdalamtabel lain. • Cartesian/Cross Product : menggabungkan data dariduabuahtabelatauhasilquery.

  6. Definisi Operasi Select • Notasi : σp(r) • pdisebutsebgaipredikat selection Di manapadalahsebuah formula dalamkalkulusproposisi yang terdiriataskondisi yang dihubungkandengan : danjugadihubungkandengan operator: =, ≠, >, ≥. <. ≤

  7. Operasi Select (Contoh)

  8. ContohOperasiSELECT • Jikaadasebuahtabelbernama S2, sbb: • Jadiuntukmenyeleksituple-tupledarirelasi S2dimana rating-nyalebihbesardari 8, ditulis : • σ rating>8 (S2) • Makatabel yang dihasilkan:

  9. Contoh-contohquery lain denganoperasi select adalah : σage = “35.0”(S2) Yang artinya : menyeleksi record-record darirelasiS2 dimanaage-nyaadalah “35.0” • MakaTabelHasilQuerynyaadalah?

  10. Operasi-operasi select, project dan rename disebutoperasiunary, karenaoperasi-operasitersebuthanyamemerlukansatutabel. • Tigaoperasilainnyamemerlukansepasangrelasi, disebutoperasibinary.

  11. DefinisiOperasiProject • Notasi : ΠA1, A2, …, Ak(r) dimana A1, A2adalahnamaatribut, danradalahnamatabel. • Hasiloperasi project didefinisikansebagairelasidengankolomsebanyakk yang diperolehdenganmenghapuskolom yang tidaktermasukdalamkriteria.

  12. ContohIlustrasiOperasi Projection

  13. ContohOperasiProject • Seandainyadiinginkansemuadaftarsnamedanrating, denganrating >8. • Denganoperasi project dapatdihasilkanrelasiini. Operasi project disimbolkandengan symbol phi (π). • Nama-namaatribut yang diinginkantampilditulissebagaisubcriptπ • Contoh : πsname,rating(σ rating>8 (S2)), adalahoperasiuntukmenampilkanseluruhsname& rating dengan rating > 8 • Hasiloperasitersebutadalah :

  14. DefinisiOperasiUnion • Notasi: r U s • Kriteria valid r U s: • 1. r, s harusmempunyaijumlahatributsama • 2. Domain atributharuskompatibel (misal : kolomkeduarelasi r mempunyaitipe data yang samadengankolomkeduarelasi s)

  15. ContohIlustrasiOperasi Union

  16. DefinisiOperasiSet Difference • Notasi : r – s • Operasi set difference harusdilakukanpadarelasi yang kompatibel : • Domain atributr dans haruskompatibel

  17. ContohIlustrasiOperasi Set Difference

  18. Cartesian / Cross-Product • Cross Product biasadikenaldenganOperasi Cartesian-product. • Operasi Cartesian-product disimbolkandengan “x”. • Denganoperasiinidapatdihasilkaninformasi yang merupakankombinasidariduatabel. • Secaragarisbesar, jikadipunyairelasir1(R1) danr2(R2), makar1 x r2 adalahtabelyang skemanyamerupakangabungandariR1 ( atribut-atributrelasi r1) danR2 (atribut-atribut r2).

  19. ContohIlustrasiOperasi Cartesian-Product

  20. Union, Intersection, Set-Difference • SemuaOperasiinimembutuhkanduarelasi, syarat yang harusdipenuhiadalah: • Mempunyaijumlah field yang sama • Field yang berkorespondensimemilikitipe yang sama. • Misalkanuntukduatabelrelasi S1 dan S2 berikut:

  21. Berikut ini adalah contoh dari ketiga operasi diatas: • Union : S1 U S2 • Intersection: S1 n S2 • Set-Difference:

  22. Contoh : S1 x R1

  23. ContohKomposisiBeberapaOperasi • Contoh: σA=C(r x s)

  24. Contoh Skema Perbankan • branch (branch-name, branch-city, assets) • customer (customer-name, customer-street, customer-only) • account (account-number, branch-name, balance) • loan (loan-number, branch-name, amount) • depositor (customer-name, account-number) • borrower (customer-name, loan-number)

  25. Contoh Query • Cari semua loan yang nilainya lebih dari $1200 σamount> 1200 (loan) • Cari nomor loan untuk semua loan yang nilainya lebih dari $1200 Πloan-number(σamount> 1200 (loan))

  26. Contoh Query • Cari nama semua customer yang mempunyai loan, account, atau keduanya. Πcustomer-name(borrower) U Πcustomer-name(depositor) • Cari nama semua customer yang mempunyai loan dan account. Πcustomer-name(borrower) ∩ Πcustomer-name(depositor)

  27. Contoh Query • Carinamasemua customer yang mempunyai loan di branch Perryridge. Πcustomer-name(σbranch-name=“Perryridge” (σborrower.loan-number = loan.loan-number(borrower x loan))) • Carinamasemua customer yang mempunyai loan di branch Perryridge, tetapitidakmempunyai account di branch manapun. Πcustomer-name(σbranch-name = “Perryridge” (σborrower.loan-number = loan.loan-number(borrower x loan))) – Πcustomer-name(depositor)

  28. Contoh Query • Carinamasemua customer yang mempunyai loan di branch Perryridge. • Query 1 Πcustomer-name(σbranch-name=“Perryridge” ( σborrower.loan-number=loan.loan-number(borrower x loan))) • Query 2 Πcustomer-name(σloan.loan-number=borrower.loan- number((σbranch-name=“Perryridge”(loan)) x borrower))

  29. Tugas: • Diketahuiskema basis data sbb: employee (person-name, street, city) works (person-name, company-name, salary) company (company-name, city) manages (person-name, manager-name) • Buatlah query SQL danAljabarrelasionaldariperintah-perintahberikut: • Tampilkansemuanamadankotaemployee • Tampilkannamadankotatempattinggalsemua employee • Tampilkannamasemua employee denganpasangan manager mereka. • Tampilkansemuanamaemployee yang bekerjapadacompany First Bank Corporation. • Tampilkannamadankotatempattinggalsemua employee yang bekerjadi First Bank Corporation. • c. Tampilkannama, alamatdankotatempattinggalsemua employee yang bekerjadi First Bank Corporation danberpenghasilanlebihdari $10,000. • d. Tampilkannamasemua employee yang tinggaldikota yang samadenganperusahaandimanamerekabekerja. • e. Tampilkannamasemua employee yang tidakbekerjadi First Bank Corporation.

More Related