Aljabar Relasional I & DML (Select)

Embed Size (px)

Citation preview

Mahasiswa memahami operasi-operasi di dalam aljabar relasional Mahasiswa memahami DML untuk select Mahasiswa mampu memetakan query aljabar relasional ke dalam query SQL Hubungan Antara Aljabar Relaional dengan SQLAljabar Relasional SQL - Aljabar relasional merupakan bahasa formal dari query. -Aljabar relasional merupakan bahasa query yang diterjemah dalam bentuk simbol-simbol matematis -Sangat bermanfaat untuk melakukan rencana evaluasi query bersifat prosedural - Aljabar relasional merupakan dasar dari SQL - SQL merupakan bahasa komersial dari query. -Bersifat user friendly bagi programmer (bersifat rasional) 4 Operasi-Operasi Dasar: -Select -Project -Cartesian Product -Union -Set Defference Operasi-Operasi Tambahan: -Theta Join -Natural Join -Intersection -Devision 5 Fungsi:untuk menyeleksi tuple yang memenuhi predikat tertentu dari suatu relasi. Simbol: Operasi ini melibatkan: 1.Operand : konstanta/bilangan 2.Operator aritmatika: 3.Operator logika: o(sigma) = s > > = < , , , , ,) ( ), ( ), ( not or and v .6 SELECT (2) sidsnameratingage 28yuppy935.0 31lubber855.5 44guppy535.0 58rusty1035.0 S2 Contoh: S2 adalah table Sailor Kita ingin menampilkan sailor yang expert dengan kriteria rating>8 ) ( 28Srating >osidsnameratingage 28yuppy935.0 58rusty1035.0 Operasi Hasil 7 Tujuan:untuk memperoleh atribut tertentu dari suatu relasi. Simbol:(pi) Hsidsnameratingage 28yuppy935.0 31lubber855.5 44guppy535.0 58rusty1035.0 S2 Contoh: snamerating yuppy9 lubber 8 guppy5 rusty10 ) (,2 Srating snametage 35.0 55.5 ) ( 2 Sagetquery 8 Tujuan: membentuk suatu relasi dari dua relasi yang terdiri dari kombinasi tuple-tuple yang mungkin Simbol: x (cross) 9 CARTESIAN PRODUCT (2) Contoh: sidbidday 2210110/10/96 5810311/12/96 R1sidsnameratingage 22dustin745.0 31lubber855.5 58rusty1035.0 S1 (sid)snameratingage(sid)bidday 22dustin745.02210110/10/96 22dustin745.05810311/12/96 31lubber855.52210110/10/96 31lubber855.55810311/12/96 58rusty1035.02210110/10/96 58rusty1035.05810311/12/96 Query: R1 x S1 Hasil: R1 dan S1 mempunyai field yang sama yaitu sid10 Sintaks SELECT [DISTINCT] select_list FROM table_source [WHERE search_condition] [GROUP BY group_by_expression] [HAVING search_condition] [ORDER BY order_expression [ASC | DESC] ] Keterangan: select_list berisi nama kolom dari tabel yang akan ditampilkan table_source berisi nama tabel-tabel yang dijadikan sebagai sumber dari data. Klausa WHERE digunakan jika informasi yang ditampilkan (pernyataan SELECT) memiliki kriteria tertentu. Klausa GROUP BY, HAVING, dan ORDER BY akan dijelaskan kemudian Perintah select digunakan untuk menampilkan informasi tertentu dari suatu tabel Operator yang dapat digunakan dalam klausa WHERE adalah: OperatorDescription =Equal (sama dengan) Not equal (tidak sama dengan) >Greater than (Lebih dari) =Greater than or equal (lebih dari sama dengan) 8 Hasil BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS 14 sidsnameratingage 28yuppy935.0 31lubber855.5 44guppy535.0 58rusty1035.0 Tabel Sailor sidsnameratingage 28yuppy935.0 58rusty1035.0 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS16 Untuk memilih baris tertentu dari sebuah himpunan baris data (record) yang memenuhi kondisi dan membuang baris yang lain. Notasi: o

() Dapatkan pegawaiyang gajinya kurang dari 200 Dapatkan pegawai yang nomornya >= 7 dangajinya kurang dari 200 o salary=7 AND salary < 200(E) BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS17 Untuk memilih attribut (kolom) tertentu dari himpunan / sub himpunan dan membuang yang lain. Notasi: t

() Tampilkan gaji pegawai Tampilkan nomor pegawaiBeserta gajinya tsalary(E) tnr, salary(E) BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS18 Dapatkan nama dan gaji pegawai yang gajinya kurang dari 200 Result tname, salary(Temp) Temp o salary