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

Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptNabilahKhairunnisa6
 
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2noviamaiyanti
 
Modul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase DModul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase DAbdiera
 
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfPPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfNatasyaA11
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdfWahyudinST
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxLeniMawarti1
 
Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum MerdekaModul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum MerdekaAbdiera
 
Sejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.pptSejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.pptssuser940815
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxrofikpriyanto2
 
APRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdf
APRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdfAPRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdf
APRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdfVenyHandayani2
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptTaufikFadhilah
 
Modul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum MerdekaAbdiera
 
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdfsandi625870
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdfcicovendra
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKARenoMardhatillahS
 
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptxTopik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptxsyafnasir
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlineMMario4
 
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfrpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfGugunGunawan93
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxg66527130
 
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...Kanaidi ken
 

Último (20)

Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
 
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
PRESENTASI PEMBELAJARAN IPA PGSD UT MODUL 2
 
Modul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase DModul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase D
 
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfPPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
 
Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum MerdekaModul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
Modul Ajar Matematika Kelas 2 Fase A Kurikulum Merdeka
 
Sejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.pptSejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.ppt
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
 
APRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdf
APRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdfAPRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdf
APRESIASI SURAT DAN MASUKAN CGP ANGKATAN X.pdf
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.ppt
 
Modul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Informatika Kelas 11 Fase F Kurikulum Merdeka
 
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
1.2.a.6 Dekon modul 1.2. DINI FITRIANI.pdf
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
 
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptxTopik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
 
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfrpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
 
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
 

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