Chapter 8 -_relational_model_fix

25
Chapter 8. Relational Model Styawati, S.T.

Transcript of Chapter 8 -_relational_model_fix

Page 1: Chapter 8 -_relational_model_fix

Chapter 8. Relational Model

Styawati, S.T.

Page 2: Chapter 8 -_relational_model_fix

Relational Data Model

Merepresentasikan data pada basisdata sebagai

kumpulan dari relasi-relasi.

215:47:06Kamis 13 April 20

23

Page 3: Chapter 8 -_relational_model_fix

Istilah

ERD Relational Basisdata

Entity Relation Table

Entity Instance

Tuple Row

Attribute Attribute Column

315:47:06Kamis 13 April 20

23

Page 4: Chapter 8 -_relational_model_fix

Aljabar Relational

Kumpulan operasi yang digunakan untuk

memanipulasi seluruh relasi.

Berdasar teori himpunan :

Gabungan (union)

Irisan (intersection)

Beda (difference)

Hasil kali Cartesian (cartesian product)

415:47:06Kamis 13 April 20

23

Page 5: Chapter 8 -_relational_model_fix

Aljabar Relational

Khusus untuk relasi basis data :

Select

Project

515:47:06Kamis 13 April 20

23

Page 6: Chapter 8 -_relational_model_fix

Teori Himpunan

Perhatikan dua relasi di bawah :

A :

B :

FName Lname Age

Tora Sudiro 22

Agus Kuncoro

21

Maia Estianty

19

FName LName Age

Ahmad Dhani 23

Dinna Olivia 24

Tora Sudiro 22

615:47:06Kamis 13 April 20

23

Page 7: Chapter 8 -_relational_model_fix

Union -- AB

Hasil dari operasi Union dari A dan B adalah :

Digabungkan semua tuple dari relasi A dan B

(Duplikasi dihapus)

FName LName Age

Tora Sudiro 22

Agus Kuncoro

21

Maia Estianty

19

Ahmad Dhani 23

Dinna Olivia 24

715:47:06Kamis 13 April 20

23

Page 8: Chapter 8 -_relational_model_fix

Intersection -- AB

Hasil dari operasi Intersection dari A dan B

adalah :

Ditampilkan tuple yang sama dari relasi A dan BFName LName Age

Tora Sudiro 22

815:47:06Kamis 13 April 20

23

Page 9: Chapter 8 -_relational_model_fix

Difference -- A-B

Hasil dari operasi difference dari A dan B

adalah :

Ditampilkan tuple dari relasi A dimana tidak

terdapat pada relasi BFName LName Age

Agus Kuncoro

21

Maia Estianty

19

915:47:06Kamis 13 April 20

23

Page 10: Chapter 8 -_relational_model_fix

Difference -- B-A

Hasil dari operasi difference dari B dan A

adalah :

Ditampilkan tuple dari relasi B dimana tidak

terdapat pada relasi AFName LName Age

Ahmad Dhani 23

Dinna Olivia 24

1015:47:06Kamis 13 April 20

23

Page 11: Chapter 8 -_relational_model_fix

Information

Atribut dari relasi untuk operasi union,

intersection dan difference harus identik (sama)

Jumlah atributnya harus sama dan domainnya

juga

Domain adalah tipe data dan ukuran dari

atribut.

1115:47:06Kamis 13 April 20

23

Page 12: Chapter 8 -_relational_model_fix

A B

A x B

Cartesian Product -- AxB

FName Lname Age

Tora Sudiro 22

Agus Kuncoro

21

Maia Estianty

19

Food Drink

Steak Coca cola

Lobster Ice Cream

FName

Lname Age Food Drink

Tora Sudiro 22 Steak Coca cola

Tora Sudiro 22 Lobster

Ice Cream

Agus Kuncoro 21 Steak Coca cola

Agus Kuncoro 21 Lobster

Ice Cream

Maia Estianty 19 Steak Coca cola

Maia Estianty 19 Lobster

Ice Cream

1215:47:06Kamis 13 April 20

23

Page 13: Chapter 8 -_relational_model_fix

Mapping Tabel

DEPARTEMENT

NAMADEP IDDEP

LOKASIDEP IDDEP LOKASI

PROYEK

NAMAP IDP LOKASI

MENGERJAKAN

IDK IDP JAMKERJA

KARYAWAN

NMDPN NMTGH NMBLKG IDK TGLLAHIR

NAMAJLN NORMH KOTA JENISK GAJI

TANGGUNGAN

IDK NAMAT JENISK TGLLAHIR

HUBUNGAN

MEMILIKI

IDDEP IDK TGLKERJA

CONTROL IDDEP IDP TGLMULAI

TGLSELESAI

BIAYA

1315:47:06Kamis 13 April 20

23

Page 14: Chapter 8 -_relational_model_fix

14

Departement

NamaDepIDDep

Research D01

Computer D02

Technical D03

Administrasi

D04

LokasiDep

IDDep

Lokasi

D01 JKT

D02 BDL

D02 SBY

D03 JKT

D03 SBY

D04 BDL

Proyek

NamaP IDPLokasi

ABC P01 JKT

DEF P02 BDL

GHI P03 SBY

JKL P04 JKT

MNO P05 BDL

Control

IDDep

IDP TglMulaiTglSelesai

Biaya

D01 P01 1/2/2010 2/3/2010 4500

D02 P02 2/3/2010 4/6/2010 6750

D03 P03 2/4/201010/1/201

19600

D02 P04 6/2/2010 2/4/2010 3450

D03 P0510/2/201

021/3/201

05700

Karyawan

NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Agus DKuncoro

K0120/2/197

5Soedirman 203 BDL L 250

Zaskia A Mecca K027/12/198

7Ahmad Yani 440 BDL P 320

Dinda K Dewi K0312/3/198

6Gajah Mada 461 JKT P 275

Tukul ARiyanto

K0410/2/197

0Ahmad Yani 143 JKT L 240

Tora H Sudiro K0521/6/197

8Kartini 531 SBY L 265

Bunga C Lestari K0611/1/198

6Pang. Antasari

133 BDL P 350

Glenn D Fredly K0725/7/197

7Diponegoro 231 JKT L 310

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

Memiliki

IDDep

IDK TglKerja

D02 K01 2/2/2009

D04 K02 3/5/2008

D03 K0310/1/200

7

D03 K0411/2/200

7

D02 K0521/1/200

9

D01 K06 5/6/2009

D02 K07 8/1/2008

D03 K0822/2/198

9

Tanggungan

IDKNamaT

JenisK

TglLahirHubungan

K01 Andi L20/2/200

0AKandung

K01 Dina P 3/6/2003 AAngkat

K04Wawan

L8/11/199

5AAngkat

K04 Fitri P12/3/199

8AKandung

K04 Linda P 2/3/2001AKandung

K05 David L14/5/200

0AKandung

Mengerjakan

IDK IDPJamKerja

K01

P01 46

K02

P01 55

K01

P02 38

K05

P02 52

K06

P02 50

K03

P03 45

K04

P03 40

K05

P03 47

K06

P03 54

K01

P04 61

K02

P04 44

K03

P05 58

K04

P05 48

Page 15: Chapter 8 -_relational_model_fix

Select ()

Fungsi :

Memilih tuple-tuple dengan kondisi tertentu

Format :

Operator select <kondisi select> (nama relasi)

1515:47:06Kamis 13 April 20

23

Page 16: Chapter 8 -_relational_model_fix

Contoh

Tampilkan karyawan yang memiliki jenis kelamin laki-laki

Relasi Karyawan

Kondisi Jenis kelamin = L

Sintax :A JENISK=‘L’ (KARYAWAN)

Output :

1615:47:06Kamis 13 April 20

23

A NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Agus DKuncoro

K0120/2/197

5Soedirman 203 BDL L 250

Tukul ARiyanto

K0410/2/197

0Ahmad Yani 143 JKT L 240

Tora H Sudiro K0521/6/197

8Kartini 531 SBY L 265

Glenn D Fredly K0725/7/197

7Diponegoro 231 JKT L 310

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

Page 17: Chapter 8 -_relational_model_fix

Contoh

Tampilkan karyawan yang memiliki gaji > 300 Relasi

Karyawan Kondisi

Gaji > 300 Sintax :

A GAJI>300 (KARYAWAN) Output :

1715:47:06Kamis 13 April 20

23

A NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Zaskia A Mecca K027/12/198

7Ahmad Yani 440 BDL P 320

Bunga C Lestari K0611/1/198

6Pang. Antasari

133 BDL P 350

Glenn D Fredly K0725/7/197

7Diponegoro 231 JKT L 310

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

Page 18: Chapter 8 -_relational_model_fix

Contoh

Tampilkan karyawan yang memiliki gaji > 300 dan berjenis kelamin perempuan

Relasi Karyawan

Kondisi Gaji > 300 Jenis kelamin = P

Sintax :A GAJI>300 (KARYAWAN)

B JENISK=‘P’ (A) Output :

1815:47:06Kamis 13 April 20

23

B NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Zaskia A Mecca K027/12/198

7Ahmad Yani 440 BDL P 320

Bunga C Lestari K0611/1/198

6Pang. Antasari

133 BDL P 350

A NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Zaskia A Mecca K027/12/198

7Ahmad Yani 440 BDL P 320

Bunga C Lestari K0611/1/198

6Pang. Antasari

133 BDL P 350

Glenn D Fredly K0725/7/197

7Diponegoro 231 JKT L 310

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

Page 19: Chapter 8 -_relational_model_fix

Contoh

Tampilkan karyawan yang memiliki gaji > 300 dan bekerja di departemen yang bernama ‘Technical’

Relasi Karyawan Memiliki Departemen

Kondisi Gaji > 300 Nama Departemen = Technical

1915:47:06Kamis 13 April 20

23

Page 20: Chapter 8 -_relational_model_fix

Contoh

Sintax :A NAMADEP=‘TECHNICAL’ (DEPARTEMEN)

B (A) IDDEP=IDDEP (MEMILIKI)

C (B) IDK=IDK (KARYAWAN)

D GAJI>300 (C)

2015:47:06Kamis 13 April 20

23

A NamaDepIDDep

Technical D03

BIDDep

IDK TglKerja

D03 K0310/1/200

7

D03 K0411/2/200

7

D03 K0822/2/198

9

C NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Dinda K Dewi K0312/3/198

6Gajah Mada 461 JKT P 275

Tukul ARiyanto

K0410/2/197

0Ahmad Yani 143 JKT L 240

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

D NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

Page 21: Chapter 8 -_relational_model_fix

Project ()

Fungsi :

Memilih atribut-atribut yang berada dalam

tabel

Format :

Operator project <daftar atribut> (nama

relasi)

2115:47:07Kamis 13 April 20

23

Page 22: Chapter 8 -_relational_model_fix

Contoh

Tampilkan Nama depan, nama belakang dan gaji dari karyawan yang memiliki jenis kelamin laki-laki

Relasi Karyawan

Kondisi Jenis kelamin = L NmDpn, NmBlkg, Gaji

2215:47:07Kamis 13 April 20

23

Page 23: Chapter 8 -_relational_model_fix

Contoh

Sintax :A JENISK=‘L’ (KARYAWAN)

B NMDPN, NMBLKG, GAJI (A) Output :

2315:47:07Kamis 13 April 20

23

A NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Agus DKuncoro

K0120/2/197

5Soedirman 203 BDL L 250

Tukul ARiyanto

K0410/2/197

0Ahmad Yani 143 JKT L 240

Tora H Sudiro K0521/6/197

8Kartini 531 SBY L 265

Glenn D Fredly K0725/7/197

7Diponegoro 231 JKT L 310

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

B NmDpnNmBlkg

Gaji

AgusKuncoro

250

TukulRiyanto

240

Tora Sudiro 265

Glenn Fredly 310

Dedi Mizwar 420

Page 24: Chapter 8 -_relational_model_fix

Contoh

Tampilkan karyawan yang memiliki gaji > 300 Relasi

Karyawan Kondisi

Gaji > 300 Sintax :

A GAJI>300 (KARYAWAN) Output :

2415:47:07Kamis 13 April 20

23

A NmDpnNmTgh

NmBlkg

IDK TglLahir NamaJlnNoRmh

KotaJenisK

Gaji

Zaskia A Mecca K027/12/198

7Ahmad Yani 440 BDL P 320

Bunga C Lestari K0611/1/198

6Pang. Antasari

133 BDL P 350

Glenn D Fredly K0725/7/197

7Diponegoro 231 JKT L 310

Dedi B Mizwar K08 2/8/1950 Soedirman 340 BDL L 420

Page 25: Chapter 8 -_relational_model_fix

Latihan

Tampilkan Nama depan, Nama Belakang dari karyawan yang bekerja di departemen technical

Tampilkan nama tanggungan dari karyawan yang memiliki gaji lebih dari 300

Tampilkan nama dan lokasi proyek yang dikerjakan oleh karyawan yang memiliki tanggungan berjenis kelamin laki-laki

Tampilkan nama depan, nama belakang dan jenis kelamin dari karyawan yang tidak memiliki tanggungan

Tampilkan lokasi departemen dimana karyawan yang bekerja gajinya diatas 300

Tampilkan lokasi departemen dimana karyawan yang bekerja tidak memiliki tanggungan

2515:47:07Kamis 13 April 20

23