Using Subqueries to Solve Queries

Slides:



Advertisements
Presentasi serupa
SQL – DML.
Advertisements

KUMPULAN PERINTAH SQL PENDY.
Basisdata 2 T.Informatika UTM Ganjil 2012/2013 1Fika Hastarita Rachman.
Praktikum Database Query Tingkat Lanjut Abdul Kadir.
1 Penulisan Statements SELECT SQL Dasar. 1-2 Tujuan Setelah mengikuti sesi ini, diharapkan mampu : Mendaftar kemampuan statement SELECT SQL Mengeksekusi.
SQL ADVANCEADVANCE. SQL Data Type MySQL Text Type : 9/7/2014By : Suwondo, S.Kom2.
DML Lanjutan Pertemuan Minggu Ke-10.
PRAKTIKUM BASIS DATA (4) TEKNIK INFORMATIKA UNIVERSITAS MERCU BUANA
Fungsi SQL lanjut dan pengambilan data dari multiple table.
Pertemuan : 8 Basis Data Terapan
Pertemuan : Basisdata Terapan
5. MENAMPILKAN DATA DARI BEBERAPA TABEL
Me-Retrieve Data Menggunakan Pernyataan SQL SELECT
JOINED TABLE Untuk menampilkan data dari dua atau lebih tabel, maka tabel – tabel tersebut harus dihubungkan terlebih dahulu  JOIN.
DATA AGREGAT MENGGUNAKAN GROUP FUNCTIONS
SQL 2. Database TRANSACTION Tabel yang terlibat : Customer berisi data pelanggan (nama, alamat, dll) OderInfo berisi info pemesanan oleh pelanggan (tgl.
Microsoft SQL Server DDL dan DML dasar
Praktikum Database Subquery Lanjutan dan View Abdul Kadir.
Fungsi JOIN.
CURSORS Nama kelompok 10 Rizka Annisa

P E R T E M U A N 12 SISTEM BASIS DATA.
SQL-Aggregate dengan Fungsi GROUP, HAVING dan subQuery
SQL: DML (2) Basis Data Pertemuan 07.
Sistem Basis Data Pertemuan 11 Presented by :
JOIN Perintah Join digunakan untuk menggabungkan 2 atau lebih tabel dengan syarat tabel yang digabungkan memiliki field yang sama.
MANAJEMEN BASIS DATA Pertemuan 8 SUBQUERY.
SQL-Fungsi Baris Tunggal
PERTEMUAN 10 QUERY KOMERSIAL LANJUTAN Agus Riyanto, S.Kom.
PRAKTIKUM BASIS DATA (4) TEKNIK INFORMATIKA UNIVERSITAS MERCU BUANA
SQL (Structure Query Language)
SQL (Structure Query Language) Pertemuan 3 – RESTRICTING AND SORTING DATA sy urf gm ail. co m.
SQL (Structure Query Language)
SQL (Structure Query Language)
SQL (Structure Query Language) Pertemuan 5 – Reporting Aggregate Data Using the Group Function sy urf gm ail. co m.
SQL-Pembatas dan Pengurutan Data
Cursor MI2163 Dasar Pemrograman Basis Data. Introduction Cursor merupakan suatu variabel yang digunakan untuk menampung hasil query yang terdiri atas.
SQL-Fungsi Baris Tunggal
SQL (Structure Query Language)
SQL (Structure Query Language)
SQL (Structure Query Language)
Structure Query Language
Menampilkan Data dari Beberapa Tabel
Rekayasa Perangkat Lunak Materi 3 (Database)
Query.
Operasi Relasional Basis Data
JOIN.
SQL (Structure Query Language)
Praktikum Database Subquery Lanjutan dan View
Query.
Menggunakan Subquery untuk Memecahkan Query Query
JOIN.
SUB QUERY LANJUTAN Oleh : SYAIFUL HUDA, S.Kom Powerpoint Templates.
EXIT KD 3.4 “ Fungsi-Fungsi Agregasi “. MATERI Disusun Oleh :
- Modul 5 - Query Lanjut 2/20/2018 7:46 PM
Sistem Manajemen Basis Data
Basis Data KD 3.3 (Penggabungan data)
Zeni Wahyu NurLaili Linda TrisiaHardianti
SQL Data Manipulation IK203 Sistem Basis Data Pertemuan #12
SQL (2) (Structure Query Language)
Structured Query Language
Query dalam sql server Pertemuan 6.
Menampilkan Data dari Beberapa Table
Structured Query Language (SQL)
Data Manipulation Language (DML)
SQL Siti Mukaromah, S.Kom.
Aplikasi Database Dosen : Sarwo, Skom,.Mkom Url :
Structured Query Language (SQL)
KULIAH “PRAKTIKUM BASIS DATA“ TEKNIK INFORMATIKA UNIVERSITAS MERCU BUANA Oleh : AFIYATI S.KOM, MT.
Query Lanjut Program Studi D3 Teknik Informatika -Fakultas Ilmu Terapan.
Transcript presentasi:

Using Subqueries to Solve Queries

Tujuan Pembelajaran: Mendefinisikan subquery Menggambarkan tipe masalah yang dapat diselesaikan dengan subquery Menggambarkan berbagai tipe subquery Menuliskan subquery dengan tipe single-row dan multiple-row

Menggunakan subquery untuk memecahkan masalah Siapa yang memiliki gaji melebihi Abel?

Sintaks Subquery Subquery (inner query) dieksekusi sebelum Main Query (outer query) Hasil Subquery digunakan oleh Main Query

Menggunakan Subquery

Pedoman Menggunakan Subquery Subquery dibatasi oleh tanda kurung Tempatkan Subquery pada sisi kanan dari perbandingan kondisi Klausa ORDER BY dalam Subquery tidak dibutuhkan Gunakan operator single-row untuk Subquery single-row, gunakan operator multiple-row untuk Subquery multiple-row

Tipe Subquery

Subquery Single-row Menghasilkan hanya satu baris Menggunakan operator perbandingan single-row

Eksekusi Subquery Single-row

Menggunakan Group Functions dalam Subquery

Klausa Having dengan Subquery Oracle akan mengeksekusi Subquery lebih dahulu Oracle akan mengembalikan hasil Subquery ke dalam klausa Having dari main query

Apa yang salah dengan statement ini?

Apakah statement ini menghasilkan baris?

Subquery Multiple-row Menghasilkan lebih dari satu baris Menggunakan operator perbandingan Multiple-row

Menggunakan operator ANY dalam Subquery Multiple-row

Menggunakan operator ALL dalam Subquery Multiple-row

Nilai NULL dalam Subquery

Using the Set Operators

Tujuan Pembelajaran: Menggambarkan operator himpunan Menggunakan operator himpunan untuk mengkombinasikan query multiple ke dalam query single Kontrol terhadap urutan baris

Operator Himpunan

Tabel yang digunakan dalam bab ini Employees: berisikan data keseluruhan pegawai Job_History: berisikan data tentang riwayat kerja pegawai

Operator Union Operator Union mengembalikan hasil dari kedua query setelah mengeliminasi data yang sama (duplikat data)

Contoh tabel_A = {‘1001’, ‘1002’, ‘1003’, ‘1004’, ‘1005’} tabel_B = {‘1002’,’1005’,’1006’,’1007’} Jika ingin menggabungkan dua tabel tersebut dengan menggunakan UNION maka akan menghasilkan himpunan data berikut: {‘1001’, ‘1002’, ‘1003’, ‘1004’, ‘1005’, ’1006’,’1007’}

Contoh tabel_A tabel_B tabel Hasil Kode 1001 1002 1005 1003 1006 UNION   tabel Hasil Kode 1001 1002 1005 1003 1006 UNION 1004 1007

Menggunakan operator Union Menampilkan detil pekerjaan sekarang dan sebelumnya dari seluruh pegawai. Tampilan tiap pegawai hanya sekali

Operator Union All Operator Union mengembalikan hasil dari kedua query, termasuk semua data yang sama

Contoh tabel_A = {‘1001’, ‘1002’, ‘1003’, ‘1004’, ‘1005’} tabel_B = {‘1002’,’1005’,’1006’,’1007’} Jika memakai perintah UNION ALL, data yang dihasilkan {‘1001’, ‘1002’, ‘1003’, ‘1004’, ‘1005’, ‘1002’, ’1005’, ’1006’, ’1007’}.

Contoh tabel_A tabel_B tabel Hasil Kode 1001 1002 1005 1003 1006   tabel Hasil Kode 1001 1002 1005 1003 1006 UNION ALL 1004 1007

Menggunakan operator Union All Menampilkan departemen sekarang dan sebelumnya dari seluruh pegawai.

Operator Intersect Intersect operator akan menggabungkan 2 query dan menghasilkan data yang sama antara hasil dari query pertama dan hasil dari query kedua

Contoh tabel C = {a,b,c,d} INTERSECT tabel D = {c,d,e} Jika memakai perintah INTERSECT hasilnya adalah {c,d}

Menggunakan operator Intersect Menampilkan employee id dan job id dari pegawai yang berada di tabel employees dan sama berada di tabel job_history

Operator Minus Minus Operator akan menggabungkan 2 query dan menghasilkan data yang ada pada TABEL A tetapi tidak ada pada  tabel B

Contoh Tabel A Tabel B

Menggunakan operator Minus Menampilkan employee id dan job id dari pegawai yang berada di tabel employees dan tidak berada di tabel job_history

Petunjuk Operator Himpunan Ekspresi dalam daftar SELECT harus cocok dalam jumlah dan tipe data Tanda kurung digunakan untuk menyatakan urutan eksekusi Klausa ORDER BY dapat digunakan di akhir statement dengan menggunakan nama kolom atau alias dari query pertama Duplikat baris otomatis akan dieliminasi kecuali dengan Operator UNION ALL. Nama kolom dalam query pertama akan muncul dalam hasil

Mencocokkan statement Select Menggunakan operator Union untuk menampilkan department ID, location, dan hire date dari semua pegawai

Mencocokkan statement Select : contoh Menggunakan operator Union untuk menampilkan employee ID, Job Id, dan salary dari semua pegawai

Kontrol urutan baris

Latihan 1 Dengan menggunakan set operator, tampilkan department_id dan job_id selain pegawai dengan job_id ‘ST_CLERK’ Hasil: EMPLOYEES JOBS Employee_id First_name Last_name Email Phone_number Hire_date Job_id Salary Commission_pct Manager_id Department_id Job_title Min_salary Max_salary select department_id, job_id from employees where job_id <> 'ST_CLERK' minus select to_number(null), job_id from jobs

Latihan 2 Dengan menggunakan set operator , tampilkan country_id dan country_name untuk negara yang tidak memiliki departemen DEPARTMENTS LOCATIONS COUNTRIES Department_id Department_name Manager_id Location_id Street_address Postal_code City State_province Country_id Country_name Region_id select d.department_id,l.location_id,c.country_id,c.country_name from departments d RIGHT OUTER JOIN locations l ON (d.location_id=l.location_id) RIGHT OUTER JOIN countries c ON (l.country_id=c.country_id) intersect select to_number(null),to_number(null),country_id, country_name from countries order by country_name