MODUL 8. Sub Query Pada baris dan Kolom PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

dokumen-dokumen yang mirip
PERTEMUAN 6 SUBQUERY

Oracle Academic Initiative

MODUL 5. Advanced Query : Pemilihan dan Pengurutan Data PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

PERTEMUAN 2 PEMILIHAN DAN PENGURUTAN DATA

PERTEMUAN 5 PENGGUNAAN FUNGSI GROUP

MODUL 7. Advanced Query : Menampilkan Data Dari Banyak Tabel PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Oracle Academic Initiative

MODUL 3. View PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Praktikum Basis Data 2017 TE UM MODUL 6 SUB QUERY

MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Oracle Academic Initiative

PERTEMUAN 4 MENAMPILKAN DATA DARI BANYAK TABEL

Oracle Academic Initiative

B a s i s D a t a - 1 C H A P T E R. SQL Lanjutan 1. Copyright 2005 PENS-ITS

MODUL 1. Pembuatan tabel, pendefinisian constraint, export dan import PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Bab 3. Query Lanjutan POKOK BAHASAN: TUJUAN BELAJAR:

Menggunakan Subquery untuk Memecahkan Query Query

LAPORAN PRAKTIKUM BASIS DATA LANJUT I

RENCANA PEMBELAJARAN

Praktikum Sistem Basis Data

Modul 3 : Query Penggabungan Tabel

SUBQUERY-2. MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA

PERTEMUAN 9 MANIPULASI DATA

MODUL V SUB QUERY & VIEW

@Tessy Badriyah, SKom. MT. PERTEMUAN 12 VIEW

LAPORAN PRAKTIKUM BASIS DATA LANJUT I

Sub Query. Rosa Ariani Sukamto Blog: Website:

PERTEMUAN 11 CONSTRAINT. Tujuan Pembelajaran : Memahami definisi Constraint Dapat Membuat Constraint Dapat Melakukan pemeliharaan Constraint

TUTORIAL. Mencari nilai Max dan Min

Pertemuan DDL INDIKATOR. Modul Teori Database Aknela

PRAKTIKUM 5 SISTEM BASIS DATA JOIN

B a s i s D a t a. Tatap MUka. SQL Query & Agregate Function. Arif Basofi PENS

PERTEMUAN 8 PENGATURAN OUTPUT PADA SQL*PLUS

PERTEMUAN 10 PEMBUATAN TABEL

LAPORAN PRAKTIKUM BASIS DATA MODUL 3 CONDITIONAL SQL MIKA PURNAMASARI NASTADINA

Oracle Academic Initiative

MODUL 2. Sequence, Index dan Synonym PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Pemrograman Basis Data dan SQL Modul ke: Pemrograman PL/SQL

MODUL 6. Advanced Query : Fungsi Baris Tunggal dan Fungsi Multi Baris PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Melaporkan Data Agreget Menggunakan Group Functions

Pertemuan 10 Structure Query Language(SQL)

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

Oracle Academic Initiative

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015

M0564-Pengantar Sistem Basisdata 12/ 1

B a s i s D a t a - 1 C H A P T E R SQL. Function & Agregat. Copyright 2005 PENS-ITS

SUBQUERY VIEW JOIN PRAKTIKUM BERKAS DAN BASIS DATA 2010/2011. Rizki Arif Firdaus

DATABASE RUMAH SAKIT 1. Objek yang dipakai a. Pasien b. Dokter c. Ruang d. Petugas e. Rawat_inap f. Pembayaran

BAB 2 : Dasar Penulisan Statemen SQL Sasaran Mengetahui kemampuan dari SQL SELECT Statement Dapat membuat perintah SQL dengan SELECT Statement

Oracle Academic Initiative

Oracle Academic Initiative

Berikut ini akan diberikan contoh-contoh penggunaan fungsi agregasi dalam klausa SQL: Contoh 1 Menampilkan banyaknya record dosen select count ( * )

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

Basis Data 1. Dasar SQL Query. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

Oracle Academic Initiative

Menggunakan Set Operators

Oracle Academic Initiative

MENAMPILKAN DATA DARI BANYAK TABEL

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini:

S Q L. Sejarah SQL. Penulisan Perintah SQL. SQL (Structure Query Language)

Pertemuan 9 Struktur Query Language(SQL)

Structured Query Language

MODUL V DATA MANIPULATION LANGUAGE (DML) 1

MENAMPILKAN DATA MENGGUNAKAN SQL SELECT

SUBQUERY VIEW JOIN PRAKTIKUM BERKAS DAN BASIS DATA 2010/2011. Rizki Arif Firdaus

Strctured Query Language BASIS DATA

Basis Data II. Pertemuan Ke-7 (Union dan Join) Noor Ifada S1 T. Informatika - UTM (2012) 1

Praktikum Basis Data 13 Structure Query Language 1

Oracle Academic Initiative

Data Manipulation Language (DML)

SQL Data Definition Language (DDL)

TABLE JOIN SQL SERVER 2005

Syntax Syntax SQL. Untuk lebih jelasnya dapat dilihat sebagai berikut : 1. DDL (Definition Data Language) a. CREATE

PERTEMUAN 13 SEQUENCE, INDEX & SYNONYM

SUBQUERY SKALAR DAN TEKNOLOGI CACHING PADA ORACLE DATABASE. Iwan Tanto

Basis Data. Bagian IV SQL (2) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

MODUL 4 QUERY, VIEW, DAN ALJABAR RELASIONAL

Oracle Academic Initiative

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL)

Perangkat Lunak Pengembangan Web

PERTEMUAN 3 FUNGSI BARIS TUNGGAL

1. Kompetensi Memahami berbagai cara (perintah SQL) yang digunakan untuk mengakses data dari banyak tabel.

MODUL IV FUNGSI AGREGAT

Oracle Academic Initiative

IKG2I4 / Software Project I

Pertemuan 11. Bahasa Query Terapan Lanjutan

Riyanto

PRAKTIKUM 4 PENGAMBILAN DATA LANJUT

SQL (STRUCTURED QUERY LANGUAGE)

Basis Data I. Pertemuan Ke-11 (SQL Part 2) Noor Ifada.

Tujuan : Praktikan mampu untuk memanipulasi data dan mampu mencari data (Retrieval)

Sistem Basis Data. Pertemuan 13 SQL INSERT & SELECT TUJUAN

Basis Data II. Pertemuan Ke-6 (Function) Noor Ifada

Untuk menampilkan data-data yang telah tersimpan dalam database diperlukan perintah SELECT, yang dapat dirumuskan sebagai berikut:

Modul Praktikum II Matakuliah Basis Data 2

Bab 5. Database Trigger POKOK BAHASAN: TUJUAN BELAJAR: 5.1. PENDAHULUAN

Function pada SQL. Aggregate Functions Scalar functions. Arithmetic functions String functions Date functions

Pertemuan 4 Menampilkan/Mengambil Data Dari Database

Basis Data. Bagian IV SQL (3) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

Macam - Macam Perintah Pada SQL

Transkripsi:

MODUL 8 Sub Query Pada baris dan Kolom PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

BAGIAN 1 SUB QUERY PADA BARIS Tujuan Pembelajaran : Menggambarkan tipe persoalan yang dapat dipecahkan oleh sub query Mendefinisikan sub query Memahami tipe-tipe dari subquery Menulis subquery baris tunggal dan baris berganda TEORI DAN PERCOBAAN 8.1 SUBQUERY Pengertian subquery akan dijelaskan melalui ilustrasi berikut ini : Misal kita ingin membuat suatu query untuk mencari gaji pegawai yang lebih besar dari gaji yang dimiliki oleh pegawai bernama JONES. Untuk memecahkan persoalan ini, kita membutuhkan dua query, satu query untuk mencari gaji yang dimiliki oleh JONES dan query lain untuk mencari pegawai yang memiliki gaji lebih besar daripada gaji JONES. Inner query atau subquery akan menghasilkan suatu nilai yang nantinya dipakai oleh outer query atau main query. Sintak (cara penulisan) sub query : SELECT select_list FROM table WHERE expr operator (SELECT select_list FROM table); Subquery dapat ditempatkan dalam klausa SQL berikut : WHERE HAVING FROM Percobaan 1 : Tampilkan nama pegawai yang memiliki gaji lebih besar daripada pegawai dengan nomer pegawai 7566 Tipe-tipe dari subquery : Single row, nilai yang dikembalikan misal : CLERK Multiple-row, nilai yang dikembalikan misal : CLERK, MANAGER Multiple-column, nilai yang dikembalikan misal : CLERK 7900 MANAGER 7698

8.2 Single Row Subquery Single row subquery memberikan hasil hanya satu baris pada bagian subquery. Untuk single row subquery ini yang digunakan adalah operator pembandingan : =, >, >=, <, <=, atau <>. Percobaan 2 : Tampilkan nama, dan pekerjaan dari pegawai yang memiliki pekerjaan yang sama dengan pegawai dengan nomer pegawai = 7369 Percobaan 3 : Tampilkan nama, dan pekerjaan dari pegawai yang memiliki pekerjaan yang sama dengan pegawai dengan nomer pegawai = 7369 dan memiliki gaji yang lebih besar daripada pegawai dengan nomer pegawai = 7876. 8.3 Penggunaan Fungsi Group dalam Subquery Fungsi Group bisa digunakan dalam subquery. Percobaan 4 : Tampilkan nama, pekerjaan dan gaji dari pegawai yang memiliki gaji yang paling kecil (minimum).

8.4 Penggunaan Klausa Having dalam Subquery Klausa HAVING bisa digunakan dalam subquery. Percobaan 5 : Tampilkan nomer department, dan gaji minimum pada tiap-tiap department yang memiliki gaji minimum yang lebih besar daripada gaji minimum pada department dengan nomer department = 20. Percobaan 6 : Tampilkan pekerjaan dan rata-rata gaji dari pekerjaan yang memiliki rata-rata gaji yang paling kecil. 8.5 Kesalahan-kesalahan dalam subquery Kesalahan dalam subquery yang mungkin terjadi adalah operator baris tunggal (=) digunakan pada subquery yang menghasilkan lebih dari satu baris, seperti pada contoh berikut : Yang benar adalah query berikut :

Kemungkinan kesalahan yang lain adalah subquery tidak menghasilkan nilai apapun (NULL), seperti pada contoh berikut : 8.6 Multiple Row Subquery Multiple Row Subquery adalah subquery yang menghasilkan lebih dari satu baris. Untuk multiple row subquery ini yang digunakan adalah operator pembandingan : IN, ANY atau ALL. 8.7 Penggunaan Operator IN dalam Multiple Row Subquery Percobaan 7 : Tampilkan nama, gaji, dan nomer department dari pegawai yang memiliki gaji yang sama dengan gaji minimum pada suatu department. 8.8 Penggunaan Operator ANY dalam Multiple Row Subquery Operator ANY identik dengan operator SOME, yang membandingkan suatu nilai dengan tiap nilai yang ada dalam subquery. Percobaan 8 : Tampilkan data pegawai yang memiliki gaji yang lebih kecil dari sembarang orang yang pekerjaannya CLERK, dan pekerjaan pegawai tersebut bukan CLERK. Data pegawai yang ditampilkan yaitu nomer, nama, dan pekerjaan pegawai. Operator =ANY ekuivalen dengan IN. Operator <ANY ekuivalen dengan MAXIMUM. Operator >ANY ekuivalen dengan MINIMUM

8.9 Penggunaan Operator ALL dalam Multiple Row Subquery Percobaan 9 : Tampilkan data pegawai yang memiliki gaji yang lebih besar daripada ratarata gaji dalam tiap department. Data pegawai yang ditampilkan yaitu nomer, nama, dan pekerjaan pegawai. Operator ALL membandingkan suatu nilai dengan semua nilai yang ada dalam subquery. Operator >ALL ekuivalen dengan MAKSIMUM. Operator <ALL ekuivalen dengan MINIMUM

BAGIAN 1 SUB QUERY PADA KOLOM Tujuan Pembelajaran : Membuat Subquery dengan banyak kolom Memahami nilai NULL dalam suatu subquery Menulis subquery dalam klausa FROM TEORI DAN PERCOBAAN 8.10 Subquery dengan banyak kolom Sintak (cara penulisan) dari multiple column subquery : SELECT column, column,. FROM table WHERE (column, column, ) IN (SELECT column, column,. FROM table WHERE condition); Percobaan 10 : Tampilkan nomor pegawai, nama pekerja, nomor manager, nomor departemen dimana (nomor manager dan nomor departemen) sama dengan (nomor manager dan nomor departemen) dari pegawai yang memiliki nomer pegawai 7499. SELECT EMPNO,ENAME,MGR,DEPTNO FROM EMP WHERE (MGR,DEPTNO) IN (SELECT MGR,DEPTNO FROM EMP WHERE EMPNO=7499) AND EMPNO<>7499; Dari hasil query, misal nomor pegawai 7521 dibawahi oleh manager dengan nomor pegawai 7 6 9 8 dan nomor departemen 30, sama dengan yang dimiliki oleh n o m o r p e g a w a i 7 4 9 9 yaitu nomor pegawai 7 6 9 8 dan nomor departemen 30. Percobaan 11 : Tampilkan nomor pegawai, nama pekerja, nomor manager, nomor departemen dimana nomor manager dan nomor departemennya sama dengan nomor manager dan nomor departemen dari pegawai yang memiliki nomer pegawai 7499. SELECT EMPNO,ENAME,MGR,DEPTNO FROM EMP WHERE MGR IN (SELECT MGR FROM EMP WHERE EMPNO=7499) AND DEPTNO IN (SELECT DEPTNO FROM EMP WHERE EMPNO=7499) AND EMPNO<>7499;

8.11 Nilai NULL dalam Subquery Jika suatu subquery menghasilkan nilai NULL maka tidak ada baris yang sesuai sehingga akan ditampilkan no rows selected. Seperti contoh berikut : 8.12 Penggunaan Subquery dalam klausa FROM Subquery dapat digunakan dalam klausa FROM, tujuannya adalah untuk membentuk hasil tabel sementara yang berisi data yang sudah diatur sesuai keperluan. Percobaan 12 : Tampilkan nama pegawai, gaji, nomer department, dan rata-rata gaji untuk semua pegawai yang memiliki gaji lebih besar dari rata-rata gaji pada department tempatnya bekerja.