SQL Part 2
description
Transcript of SQL Part 2
![Page 1: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/1.jpg)
SQLPart 2
![Page 2: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/2.jpg)
2
Review Pertemuan Ke-IX
Sistem basis data komersial menghendaki adanya sebuah bahasa query yang lebih user-friendly.
Oleh karena itu dikenal SQL sebagai bahasa query yang marketable.
SQL menggunakan kombinasi aljabar relasional & kalkulus relasional.
Struktur dasar dari ekspresi SQL terdiri dari tiga klausa yaitu : select, from dan where.
![Page 3: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/3.jpg)
3
Klausa Where
Contoh query : “Temukan semua loan number untuk pinjaman-pinjaman yang dibuat pada cabang Perryridge dengan jumlah lebih besar dari $1200”.
Query-nya ditulis sebagai berikut :
![Page 4: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/4.jpg)
4
Klausa Where
Select loan-numberFrom loanWhere branch-name = “Perryridge” and
amount >1200
![Page 5: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/5.jpg)
5
Klausa Where
SQL menggunakan konektivitas lojik and, or dan not dalam klausa where.
SQL juga memasukkan perintah between untuk menentukan apakah suatu nilai lebih kecil daripada atau sama dengan suatu nilai lain dan lebih besar daripada atau sama dengan suatu nilai lain.
![Page 6: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/6.jpg)
6
Klausa Where
Contoh : jika diinginkan menemukan loan-number yang jumlah pinjamannya antara $90000 dan $100000, ditulis sebagai berikut :
Select loan-numberFrom loanWhere amount between 90000 and 100000
![Page 7: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/7.jpg)
7
Klausa From
Contoh query : “Untuk semua customer yang mempunyai sebuah pinjaman dari bank, temukan nama dan loan number mereka”.
![Page 8: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/8.jpg)
8
Klausa From
Select distinct customer-name, borrower.loan-number
From borrower, loanWhere borrower.loan-number =
loan.loan.number
![Page 9: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/9.jpg)
9
Operasi Rename
SQL menyediakan mekanisme operasi rename untuk relasi dan atribut.
Operasi rename dalam SQL menggunakan klausa as dengan bentuk :
Nama-lama as nama-baru
![Page 10: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/10.jpg)
10
Operasi Rename
Contoh : Jika atribut dengan nama loan-number akan diganti dengan nama loan-id, dapat ditulis sebagai berikut :
![Page 11: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/11.jpg)
11
Operasi Rename
Select distinct customer-name, borrower.loan-number as loan-id
From borrower,loanWhere borrower.loan-number = loan.loan-
number and branch-name = “Perryridge”
![Page 12: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/12.jpg)
12
OPERASI HIMPUNAN
Operasi operasi himpunan pada SQL-92 meliputi : union, intersect, dan except.
Union identik dengan U, intersect identik dengan ∩ dan except identik dengan – pada aljabar relasional.
![Page 13: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/13.jpg)
13
Operasi Union
Contoh : Untuk mendapatkan semua customer yang mempunyai pinjaman, rekening atau keduannya pada bank ditulis :
(select customer-name from depositor)union(select customer-name from borrower)
![Page 14: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/14.jpg)
14
Operasi Union
Operasi union secara otomatis akan menghilangkan duplikasi, tidak seperti klausa select.
Sehingga pada query di atas, jika Jones (seorang customer) mempunyai beberapa rekening atau pinjaman (atau keduannya) pada bank, maka Jones hanya akan muncul sekali.
Jika duplikasi diinginkan ada maka harus ditulis union all.
![Page 15: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/15.jpg)
15
Operasi Intersect
Contoh : untuk mendapatkan semua customer yang memiliki pinjaman dan rekening pada bank, query-nya ditulis :
(select distinct customer-name from depositor)
intersect
(select distinct customer-name from borrower)
![Page 16: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/16.jpg)
16
Operasi Intersect
Operasi intersect secara otomatis menghilangkan duplikasi.
Jika diinginkan duplikasi tetap ada ditulis intersect all.
![Page 17: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/17.jpg)
17
Operasi Except
Contoh : untuk mendapatkan semua customer yang mempunyai sebuah rekening tetapi tidak memiliki pinjaman pada bank, ditulis :
(select distinct customer-name from depositor)
except
(select customer-name from borrower)
![Page 18: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/18.jpg)
18
Operasi Except
Operasi except secara otomatis menghilangkan duplikasi.
Jika diinginkan ada maka ditulis : except all.
![Page 19: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/19.jpg)
19
Summary
Operasi operasi himpunan pada SQL-92 meliputi : union, intersect, dan except.
Union identik dengan U, intersect identik dengan ∩ dan except identik dengan – pada aljabar relasional.
Operasi union secara otomatis akan menghilangkan duplikasi, tidak seperti klausa select.
![Page 20: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/20.jpg)
20
SOAL LATIHAN1.Diketahui relasi yang menyimpan penerbangan pesawat: Flights(flno: integer, from: string, to: string, distance: integer, departs: time, arrives: time, price: integer) Aircraft(aid: integer, aname: string, cruisingrange: integer) Certied(eid: integer, aid: integer) Employees(eid: integer, ename: string, salary: integer) Tuliskan query dalam SQL : 1. For all aircraft with cruisingrange over 1,000 miles, nd the name of the
aircraft and the average salary of all pilots certied for this aircraft. 2. Find the names of pilots certied for some Boeing aircraft. 3. Find the aids of all aircraft that can be used on routes from Los Angeles
to Chicago. 4. Identify the flights that can be piloted by every pilot who makes more
than $100,000. (Hint: The pilot must be certied for at least one plane with a suciently large
cruising range.)
![Page 21: SQL Part 2](https://reader033.fdocument.pub/reader033/viewer/2022061608/56814de0550346895dbb4d25/html5/thumbnails/21.jpg)
21
REFERENSI
Referensi Wajib:
Raghu Ramakhrisnan, Johannes Gehrke , “Database Management System” 6th Edition, Mc Graw Hill,2006
(chapter : 5) Referensi Tambahan/dianjurkan:
David M.Kroenke, Database Concepts 4th Edition, Prentice Hall 2004