Kalkulus Relasional   16 Oktober 2012
Kalkulus Relasional Bahasa kueri Structured Query Language Standardisasi SQL 99 Data Manipulation Language Pemetaan de...
SQL Statement Statemen SQL tidak case sensitif Statemen SQL dapat terdiri dari satu atau lebih baris Keyword tidak bole...
SQL SELECT Statement Operasi Projection dalam Kalkulus Relasional Pernyataan paling sederhana  SELECT kolom1, kolom2, . ...
SQL SELECT Menghilangkan duplikasi baris dengan DISTINCT  SELECT department_id  FROM employees; Bandingkan dengan  SELEC...
Klausa WHERE Operasi Selection dalam Kalkulus Relasional  SELECT employee_id, last_name,    job_id, department_id  FROM e...
Tipe data Char dan Number Atribut last_name diapit oleh single-quote    Tipe data string (CHAR, VARCHAR2) Atribut depar...
Kondisi Perbandingan dalamklausa WHERE Operator perbandingan aritmatik (=, >=, <=, <, >)  berlaku seperti dalam bahasa pe...
Operator BETWEEN . . AND . . Tampilkan Nama belakang pegawai dan Gajinya bagi mereka yang memiliki gaji dalam rentang di ...
Operator IN Tampilkan Nomor karyawan, Nama belakang, Gaji, dan Nomor departemen untuk semua pegawai yang bekerja di depar...
Operator LIKE Berlaku untuk tipe data String Bersifat case-sensitive Tampilkan Nama depan pegawai yang diawali dengan  ...
Operator LIKE Tampilkan Nama belakang para pegawai yang memiliki nama terdiri atas empat huruf, diawali dengan huruf K  S...
Operator Logika Gunakan keyword AND, OR, NOT untuk  menggabungkan kondisi dalam klausa WHERE Perhatikan prioritas (prese...
Prioritas Evaluasi OperatorUrutan evaluasi          Operator           1             Operator aritmatika           2      ...
Contoh Presedensi Operator Menampilkan pegawai yang menjabat sebagai presiden perusahaan dan gajinya lebih dari 15000 ata...
Contoh Presedensi Operator Menampilkan pegawai yang menjabat sebagai presiden perusahaan atau bertugas sebagai sales repr...
Klausa ORDER BY Mengurutkan baris dengan klausa ORDER BY   ASC (default) terurut dari kecil ke besar   DESC terurut dar...
Memperoleh data dari banyaktable EMPLOYEE_ID   LAST_NAME              DEPARTMENT_ID 100           King                   9...
Join dalam klausa WHERE Operasi Join dalam Kalkulus Relasional Atribut Nama departemen tidak tercantum di dalam tabel em...
Equijoin Natural join merelasikan setiap baris di tabel pertama  dengan setiap baris di tabel kedua Equijoin hanya menam...
Equijoin Biasanya atribut di dua tabel yang direlasikan melalui Equijoin bernama sama   Employees.department_id   Depar...
Penulisan Alias  SELECT e.last_name, d.department_name  FROM employees e, departments d  WHERE e.department_id = d.departm...
Kondisi Tambahan Equijoin merelasikan dua tabel Kondisi tambahan bisa disebutkan dengan operator AND atau OR  SELECT e.l...
Join Tiga Tabel Untuk melakukan join n tabel, kita memerlukan paling sedikit n-1 kondisi join.   Contoh untuk melakukan ...
Self Join Relasi rekursif dalam Diagram ER Tampilkan nama pegawai dan nama atasannya  SELECT worker.last_name ||  works ...
Pustaka http://tjerdastangkas.blogspot.com/search/label/ikd312               Kalkulus Relasional                         26
Kamis, 20 Oktober 2011
Upcoming SlideShare
Loading in …5
×

ikd312-05-kalkulus-relasional

518 views
446 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
518
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ikd312-05-kalkulus-relasional

  1. 1. Kalkulus Relasional 16 Oktober 2012
  2. 2. Kalkulus Relasional Bahasa kueri Structured Query Language Standardisasi SQL 99 Data Manipulation Language Pemetaan dengan Aljabar Relasional  Relasi, Table name  Projection operator, SELECT  Selection operator, klausa WHERE  Join, klausa Inner Join dalam klausa WHERE Kalkulus Relasional 2
  3. 3. SQL Statement Statemen SQL tidak case sensitif Statemen SQL dapat terdiri dari satu atau lebih baris Keyword tidak boleh disingkat atau terpisah pada baris yang berbeda Klausa biasanya ditempatkan pada baris yang berbeda Indentasi biasanya digunakan untuk memudahkan pembacaan statemen Kalkulus Relasional 3
  4. 4. SQL SELECT Statement Operasi Projection dalam Kalkulus Relasional Pernyataan paling sederhana SELECT kolom1, kolom2, . . , kolom-n FROM tabel Contoh SELECT last_name, salary, dept_id FROM employees; Kalkulus Relasional 4
  5. 5. SQL SELECT Menghilangkan duplikasi baris dengan DISTINCT SELECT department_id FROM employees; Bandingkan dengan SELECT DISTINCT department_id FROM employees; Kalkulus Relasional 5
  6. 6. Klausa WHERE Operasi Selection dalam Kalkulus Relasional SELECT employee_id, last_name, job_id, department_id FROM employees WHERE department_id = 90; Tampilkan Nomor pegawai, Nama belakang, Jenis pekerjaan, dan Nomor departemen bagi pegawai yang bekerja di departemen nomor 90 Kalkulus Relasional 6
  7. 7. Tipe data Char dan Number Atribut last_name diapit oleh single-quote  Tipe data string (CHAR, VARCHAR2) Atribut department_id tidak diapit single-quote  NUMBER SELECT last_name, job_id, department_id FROM employees WHERE last_name = King; Kalkulus Relasional 7
  8. 8. Kondisi Perbandingan dalamklausa WHERE Operator perbandingan aritmatik (=, >=, <=, <, >) berlaku seperti dalam bahasa pemrograman Operator ketidaksamaan: <>  Bandingkan dengan != dalam Java atau C++ Operator tambahan  BETWEEN . . AND . .  IN  NOT  LIKE Kalkulus Relasional 8
  9. 9. Operator BETWEEN . . AND . . Tampilkan Nama belakang pegawai dan Gajinya bagi mereka yang memiliki gaji dalam rentang di antara 2500 dan 3500 SELECT last_name, salary FROM employees WHERE salary BETWEEN 2500 AND 3500; Bersifat inklusif (batas atas dan batas bawah dimasukkan ke dalam hasil kueri) Kalkulus Relasional 9
  10. 10. Operator IN Tampilkan Nomor karyawan, Nama belakang, Gaji, dan Nomor departemen untuk semua pegawai yang bekerja di departemen 100, 101, dan 102 SELECT employee_id, last_name, salary, department_id FROM employees WHERE department_id IN (100, 101, 102); Setara dengan WHERE department_id = 100 OR department_id = 101 OR department_id = 102; Kalkulus Relasional 10
  11. 11. Operator LIKE Berlaku untuk tipe data String Bersifat case-sensitive Tampilkan Nama depan pegawai yang diawali dengan huruf S SELECT first_name FROM employees WHERE first_name LIKE S%; Bandingkan dengan klausa WHERE first_name LIKE s%; Kalkulus Relasional 11
  12. 12. Operator LIKE Tampilkan Nama belakang para pegawai yang memiliki nama terdiri atas empat huruf, diawali dengan huruf K SELECT last_name FROM employees WHERE last_name LIKE K___; Karakter % mewakili nol, satu, atau lebih huruf Karakter _ mewakili satu huruf Kalkulus Relasional 12
  13. 13. Operator Logika Gunakan keyword AND, OR, NOT untuk menggabungkan kondisi dalam klausa WHERE Perhatikan prioritas (presedensi) operator dalam klausa WHERE SELECT employee_id, last_name, job_id, salary FROM employees WHERE job_id NOT IN (IT_PROG, ST_CLERK, SA_REP); Kalkulus Relasional 13
  14. 14. Prioritas Evaluasi OperatorUrutan evaluasi Operator 1 Operator aritmatika 2 Operator konkatenation 3 Perbandingan kondisi 4 IS [NOT] NULL, LIKE, [NOT] IN 5 [NOT] BETWEEN 6 NOT kondisi lojik 7 AND kondisi lojik 8 OR kondisi lojik Ketentuan dapat diabaikan dengan menggunakan tanda kurung ( ) Kalkulus Relasional 14
  15. 15. Contoh Presedensi Operator Menampilkan pegawai yang menjabat sebagai presiden perusahaan dan gajinya lebih dari 15000 atau pegawai yang bertugas sebagai sales representatif SELECT last_name, job_id, salary FROM employees WHERE job_id = SA_REP OR job_id = AD_PRES AND salary > 15000; Kalkulus Relasional 15
  16. 16. Contoh Presedensi Operator Menampilkan pegawai yang menjabat sebagai presiden perusahaan atau bertugas sebagai sales representatif dan juga pegawai yang gajinya lebih besar dari 15000 SELECT last_name, job_id, salary FROM employees WHERE (job_id = SA_REP OR job_id = AD_PRES) AND salary > 15000; Kalkulus Relasional 16
  17. 17. Klausa ORDER BY Mengurutkan baris dengan klausa ORDER BY  ASC (default) terurut dari kecil ke besar  DESC terurut dari besar ke kecil Klausa ORDER BY terdapat dibagian akhir dari statement SELECT SELECT last_name, job_id department_id, hire_date FROM employees ORDER BY hire_date DESC; Kalkulus Relasional 17
  18. 18. Memperoleh data dari banyaktable EMPLOYEE_ID LAST_NAME DEPARTMENT_ID 100 King 90 101 Kochar 90 ... ... 205 Higgins 110 206 Giant 110 DEPARTMENT_ID DEPARTMENT_NAME LOCATION_ID 10 Administration 1700 20 Marketing 1900 50 Shipping 1500 ..... 100 Contracting 1700 Kalkulus Relasional 18
  19. 19. Join dalam klausa WHERE Operasi Join dalam Kalkulus Relasional Atribut Nama departemen tidak tercantum di dalam tabel employees DESC employees; Untuk menampilkan nama pegawai beserta nama departemen, perlu merelasikan dua tabel Natural Join SELECT employees.last_name, departments.depatment_name FROM employees, department; Kalkulus Relasional 19
  20. 20. Equijoin Natural join merelasikan setiap baris di tabel pertama dengan setiap baris di tabel kedua Equijoin hanya menampilkan baris-baris yang Equal Kesamaan atribut didasarkan pada rancangan ERD SELECT employees.last_name, departments.department_name FROM employees, departments WHERE employees.department_id = departments.department_id; Kalkulus Relasional 20
  21. 21. Equijoin Biasanya atribut di dua tabel yang direlasikan melalui Equijoin bernama sama  Employees.department_id  Departments.department_id Bandingkan juga dengan  Departments.location_id  Locations.location_id Belum tentu sama!  Akan dibahas dalam pertemuan berikutnya Kalkulus Relasional 21
  22. 22. Penulisan Alias SELECT e.last_name, d.department_name FROM employees e, departments d WHERE e.department_id = d.department_id; Lebih singkat daripada SELECT employees.last_name, departments.department_name FROM employees, departments WHERE employees.department_id = departments.department_id; Kalkulus Relasional 22
  23. 23. Kondisi Tambahan Equijoin merelasikan dua tabel Kondisi tambahan bisa disebutkan dengan operator AND atau OR SELECT e.last_name, e.department_id, d.department_name FROM employees e, departments d WHERE e.department_id = d.department_id AND e.last_name = King; Klausa ORDER BY juga bisa ditambahkan jika perlu Kalkulus Relasional 23
  24. 24. Join Tiga Tabel Untuk melakukan join n tabel, kita memerlukan paling sedikit n-1 kondisi join.  Contoh untuk melakukan join menggunakan 3 tabel, diperlukan paling sedikit 2 buah join Contoh melakukan join menggunakan tabel EMPLOYEES, DEPARTMENTS dan LOCATIONS SELECT e.employee_id, e.last_name, l.city FROM employees e, departments d, locations l WHERE e.department_id = d.department_id AND d.location_id = l.location_id; Kalkulus Relasional 24
  25. 25. Self Join Relasi rekursif dalam Diagram ER Tampilkan nama pegawai dan nama atasannya SELECT worker.last_name || works for || manager.last_name FROM employees worker, employees manager WHERE worker.manager_id = manager.employee_id; Operator || digunakan untuk menggandengkan (concatenate) data String Kalkulus Relasional 25
  26. 26. Pustaka http://tjerdastangkas.blogspot.com/search/label/ikd312 Kalkulus Relasional 26
  27. 27. Kamis, 20 Oktober 2011

×