SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
Kalkulus Relasional
   16 Oktober 2012
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
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
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
SQL SELECT
 Menghilangkan duplikasi baris dengan DISTINCT
  SELECT department_id
  FROM employees;
 Bandingkan dengan
  SELECT DISTINCT department_id
  FROM employees;




             Kalkulus Relasional                  5
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
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
Kondisi Perbandingan dalam
klausa 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
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
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
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
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
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
Prioritas Evaluasi Operator
Urutan 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
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
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
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
Memperoleh data dari banyak
table
 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
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
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
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
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
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
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
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
Pustaka
 http://tjerdastangkas.blogspot.com/search/label/ikd312




               Kalkulus Relasional                         26
Kamis, 20 Oktober 2011

Más contenido relacionado

Destacado

Electric energy scientific development, main source and consumers
Electric energy scientific development, main source and consumersElectric energy scientific development, main source and consumers
Electric energy scientific development, main source and consumersP K Agarwal
 
DrupalCamp Arad - Drupal 7 as a framework - an overview of available APIs
DrupalCamp Arad - Drupal 7 as a framework - an overview of available APIsDrupalCamp Arad - Drupal 7 as a framework - an overview of available APIs
DrupalCamp Arad - Drupal 7 as a framework - an overview of available APIsValentin Bora
 
The British People Today
The British People TodayThe British People Today
The British People TodayMarvn
 
Ironhack presentation
Ironhack presentationIronhack presentation
Ironhack presentationpristella84
 
Innovation based economic development for industry in haverhill
Innovation based economic development for industry in haverhillInnovation based economic development for industry in haverhill
Innovation based economic development for industry in haverhillJohn Michitson
 
Salida romilla 2º ciclo 2016
Salida romilla 2º ciclo 2016Salida romilla 2º ciclo 2016
Salida romilla 2º ciclo 2016XXX XXX
 
Financial Planning Basics
Financial Planning BasicsFinancial Planning Basics
Financial Planning Basicsr30791
 
Agency User Guide
Agency User GuideAgency User Guide
Agency User Guidemayureshp
 
To focus or not to focus
To focus or not to focusTo focus or not to focus
To focus or not to focusJahad Farahmand
 
Don’t let Your Website Spread Malware – a New Approach to Web App Security
Don’t let Your Website Spread Malware – a New Approach to Web App SecurityDon’t let Your Website Spread Malware – a New Approach to Web App Security
Don’t let Your Website Spread Malware – a New Approach to Web App SecuritySasha Nunke
 
Advanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAdvanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAngelo Corsaro
 
Scientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution ServiceScientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution ServiceAngelo Corsaro
 
Roadmap and Technology Incubators
Roadmap and Technology IncubatorsRoadmap and Technology Incubators
Roadmap and Technology IncubatorsAngelo Corsaro
 
Activist Angels - Leadership Development Programme
Activist Angels - Leadership Development ProgrammeActivist Angels - Leadership Development Programme
Activist Angels - Leadership Development ProgrammeOgunte CIC
 

Destacado (20)

Electric energy scientific development, main source and consumers
Electric energy scientific development, main source and consumersElectric energy scientific development, main source and consumers
Electric energy scientific development, main source and consumers
 
DrupalCamp Arad - Drupal 7 as a framework - an overview of available APIs
DrupalCamp Arad - Drupal 7 as a framework - an overview of available APIsDrupalCamp Arad - Drupal 7 as a framework - an overview of available APIs
DrupalCamp Arad - Drupal 7 as a framework - an overview of available APIs
 
The British People Today
The British People TodayThe British People Today
The British People Today
 
Vagrant
VagrantVagrant
Vagrant
 
Ironhack presentation
Ironhack presentationIronhack presentation
Ironhack presentation
 
Sph 106 Ch 3
Sph 106 Ch 3Sph 106 Ch 3
Sph 106 Ch 3
 
Innovation based economic development for industry in haverhill
Innovation based economic development for industry in haverhillInnovation based economic development for industry in haverhill
Innovation based economic development for industry in haverhill
 
Salida romilla 2º ciclo 2016
Salida romilla 2º ciclo 2016Salida romilla 2º ciclo 2016
Salida romilla 2º ciclo 2016
 
Financial Planning Basics
Financial Planning BasicsFinancial Planning Basics
Financial Planning Basics
 
Eal brandon
Eal   brandonEal   brandon
Eal brandon
 
Agency User Guide
Agency User GuideAgency User Guide
Agency User Guide
 
Halloween Party
Halloween PartyHalloween Party
Halloween Party
 
Network Intelligence
Network IntelligenceNetwork Intelligence
Network Intelligence
 
To focus or not to focus
To focus or not to focusTo focus or not to focus
To focus or not to focus
 
Don’t let Your Website Spread Malware – a New Approach to Web App Security
Don’t let Your Website Spread Malware – a New Approach to Web App SecurityDon’t let Your Website Spread Malware – a New Approach to Web App Security
Don’t let Your Website Spread Malware – a New Approach to Web App Security
 
Advanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part IAdvanced OpenSplice Programming - Part I
Advanced OpenSplice Programming - Part I
 
Scientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution ServiceScientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution Service
 
Roadmap and Technology Incubators
Roadmap and Technology IncubatorsRoadmap and Technology Incubators
Roadmap and Technology Incubators
 
Activist Angels - Leadership Development Programme
Activist Angels - Leadership Development ProgrammeActivist Angels - Leadership Development Programme
Activist Angels - Leadership Development Programme
 
ikp321-05
ikp321-05ikp321-05
ikp321-05
 

Similar a SQL Kalkulus

Laporan praktikum modul 8 (dml part 2)
Laporan praktikum modul 8 (dml part 2)Laporan praktikum modul 8 (dml part 2)
Laporan praktikum modul 8 (dml part 2)Devi Apriansyah
 
T modul 5 mysql
T modul 5 mysqlT modul 5 mysql
T modul 5 mysqljafra
 
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.pptfile_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.pptlumaeducation
 
Modul my sql tutorial part 5
Modul my sql tutorial part 5Modul my sql tutorial part 5
Modul my sql tutorial part 5Ratzman III
 
SQL Query Comparison.pptx
SQL Query Comparison.pptxSQL Query Comparison.pptx
SQL Query Comparison.pptxssuser0c38031
 
matrei perkuliahana tentang SQL Overview.ppt
matrei perkuliahana tentang SQL Overview.pptmatrei perkuliahana tentang SQL Overview.ppt
matrei perkuliahana tentang SQL Overview.ppterlandarmawan2
 
T3 – Query Lanjutan [1]
T3 – Query Lanjutan [1]T3 – Query Lanjutan [1]
T3 – Query Lanjutan [1]Siska Amelia
 
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & CalculusBasis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & CalculusRatzman III
 

Similar a SQL Kalkulus (19)

Laporan praktikum modul 8 (dml part 2)
Laporan praktikum modul 8 (dml part 2)Laporan praktikum modul 8 (dml part 2)
Laporan praktikum modul 8 (dml part 2)
 
T modul 5 mysql
T modul 5 mysqlT modul 5 mysql
T modul 5 mysql
 
Oracle sql
Oracle sqlOracle sql
Oracle sql
 
Lapers 6 1235010002
Lapers 6 1235010002Lapers 6 1235010002
Lapers 6 1235010002
 
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.pptfile_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
 
Bab5
Bab5Bab5
Bab5
 
Bab5
Bab5Bab5
Bab5
 
Modul my sql tutorial part 5
Modul my sql tutorial part 5Modul my sql tutorial part 5
Modul my sql tutorial part 5
 
Lapres 4 1235010002
Lapres 4 1235010002Lapres 4 1235010002
Lapres 4 1235010002
 
Lapres 4 1235010002
Lapres 4 1235010002Lapres 4 1235010002
Lapres 4 1235010002
 
SQL Query Comparison.pptx
SQL Query Comparison.pptxSQL Query Comparison.pptx
SQL Query Comparison.pptx
 
SQL.pdf
SQL.pdfSQL.pdf
SQL.pdf
 
matrei perkuliahana tentang SQL Overview.ppt
matrei perkuliahana tentang SQL Overview.pptmatrei perkuliahana tentang SQL Overview.ppt
matrei perkuliahana tentang SQL Overview.ppt
 
Bab 6. SQL
Bab 6. SQLBab 6. SQL
Bab 6. SQL
 
T3 – Query Lanjutan [1]
T3 – Query Lanjutan [1]T3 – Query Lanjutan [1]
T3 – Query Lanjutan [1]
 
Pertemuan ke 3
Pertemuan ke 3Pertemuan ke 3
Pertemuan ke 3
 
Lapres 2 1235010002
Lapres 2 1235010002Lapres 2 1235010002
Lapres 2 1235010002
 
Modul5 23feb2013
Modul5 23feb2013Modul5 23feb2013
Modul5 23feb2013
 
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & CalculusBasis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
 

Más de Anung Ariwibowo (20)

isd314-06-association-mining
isd314-06-association-miningisd314-06-association-mining
isd314-06-association-mining
 
ikp213-unifikasi
ikp213-unifikasiikp213-unifikasi
ikp213-unifikasi
 
ikp213-06-horn-clause
ikp213-06-horn-clauseikp213-06-horn-clause
ikp213-06-horn-clause
 
ikp213-01-pendahuluan
ikp213-01-pendahuluanikp213-01-pendahuluan
ikp213-01-pendahuluan
 
ikd312-05-sqlite
ikd312-05-sqliteikd312-05-sqlite
ikd312-05-sqlite
 
ikd312-04-aljabar-relasional
ikd312-04-aljabar-relasionalikd312-04-aljabar-relasional
ikd312-04-aljabar-relasional
 
ikd312-03-design
ikd312-03-designikd312-03-design
ikd312-03-design
 
ikd312-02-three-schema
ikd312-02-three-schemaikd312-02-three-schema
ikd312-02-three-schema
 
ikp213-02-pendahuluan
ikp213-02-pendahuluanikp213-02-pendahuluan
ikp213-02-pendahuluan
 
ikh311-08
ikh311-08ikh311-08
ikh311-08
 
ikh311-07
ikh311-07ikh311-07
ikh311-07
 
ikh311-06
ikh311-06ikh311-06
ikh311-06
 
ikh311-05
ikh311-05ikh311-05
ikh311-05
 
ikp321-svn
ikp321-svnikp321-svn
ikp321-svn
 
ikh311-04
ikh311-04ikh311-04
ikh311-04
 
imsakiyah-jakarta-1433-09
imsakiyah-jakarta-1433-09imsakiyah-jakarta-1433-09
imsakiyah-jakarta-1433-09
 
ikh311-03
ikh311-03ikh311-03
ikh311-03
 
ikp321-04
ikp321-04ikp321-04
ikp321-04
 
ikp321-03
ikp321-03ikp321-03
ikp321-03
 
ikh311-02
ikh311-02ikh311-02
ikh311-02
 

Último

AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..ikayogakinasih12
 
442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptxHendryJulistiyanto
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASKurniawan Dirham
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptx421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptxGiftaJewela
 
Aksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptxAksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptxsdn3jatiblora
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1udin100
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfbibizaenab
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfCandraMegawati
 
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxTugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxmawan5982
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxPurmiasih
 
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5ssuserd52993
 
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxPaparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxIgitNuryana13
 
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikaAtiAnggiSupriyati
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxsukmakarim1998
 
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfirwanabidin08
 
Dinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapDinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapsefrida3
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Abdiera
 
Modul Ajar Bahasa Indonesia Kelas 4 Fase B
Modul Ajar Bahasa Indonesia Kelas 4 Fase BModul Ajar Bahasa Indonesia Kelas 4 Fase B
Modul Ajar Bahasa Indonesia Kelas 4 Fase BAbdiera
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxssuser50800a
 

Último (20)

AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
 
442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptx421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptx
 
Aksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptxAksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptx
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
 
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxTugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
 
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
JAWAPAN BAB 1 DAN BAB 2 SAINS TINGKATAN 5
 
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxPaparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
 
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
 
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
 
Dinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapDinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genap
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
 
Modul Ajar Bahasa Indonesia Kelas 4 Fase B
Modul Ajar Bahasa Indonesia Kelas 4 Fase BModul Ajar Bahasa Indonesia Kelas 4 Fase B
Modul Ajar Bahasa Indonesia Kelas 4 Fase B
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
 

SQL Kalkulus

  • 1. Kalkulus Relasional 16 Oktober 2012
  • 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. 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. 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. SQL SELECT  Menghilangkan duplikasi baris dengan DISTINCT SELECT department_id FROM employees;  Bandingkan dengan SELECT DISTINCT department_id FROM employees; Kalkulus Relasional 5
  • 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. 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. Kondisi Perbandingan dalam klausa 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. 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. 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. 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. 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. 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. Prioritas Evaluasi Operator Urutan 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. 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. 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. 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. Memperoleh data dari banyak table 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. 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. 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. 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. 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. 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. 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. 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