Anda di halaman 1dari 31

SUBQUERIES

Mahasiswa mampu untuk :


a. Mendefinisikan subqueries dan memahami fungsi
serta cara menggunakan subqueries
b. Mendeskripsikan beberapa type masalah yang
dapat diselesaikan oleh subqueries
c. Memahami jenis-jenis subqueries
Subquery adalah perintah select yang berada
didalam SQL lain. Subquery sangat berguna ketika kita
ingin menampilkan data dengan kondisi yang
bergantung pada data didalam tabel itu sendiri.
Subquery adalah Query didalam query. Artinya
seleksi data berdasarkan hasil seleksi data yang telah
ada. Sintax SQL nya sama syntax SQL pada
umumnya, tetapi kondisi setelah where diikuti
dengan query baru atau subquery. Syntaxnya :
SELECT nama_field-1,…..,nama_field-n
FROM nama_tabel
WHERE kriteria (SELECT nama_field-1, …….,
nama_field-n
FROM nama_tabel
WHERE kriteria)
Single-ROW Subqueries:
Single Row Subquery memberikan hasil hanya satu
baris pada bagian subquery. Untuk single row subquery
ini yang digunakan adalah operator pembanding : >, >=,
<, <= atau <>

Contoh :
Menampilkan data karyawan yang memiliki job_id
sama dengan Austin.
Multiple-ROW Subqueries:

Multiple Rows Subquery adalah subquery yang menghasilkan lebih


dari satu baris data. Untuk multiple row subquery ini yang digunakan
adalah operator pembanding IN, ANY, atau ALL

Contoh :
Menampilkan data karyawan yang manager_id nya 205 atau
department_id nya 90.
Menggunakan Function dalam Subqueries:

Klausa Having
Kita dapat menggunakan subquery tidak hanya
dalam klausa WHERE, namun juga kita dapat
menggunakan klausa HAVING.
Klausa WHERE
SELECT last_name, Department_id, salary
FROM employees
WHERE salary = ( SELECT MIN(salary)
FROM employees)
Menggunakan HAVING dan Subqueries:

Contoh :
Menampilkan data department_id yang memiliki
rata-rata
Gaji diatas rata-rata gaji department_id 60.
SELECT department_id, AVG(salary)
FROM employees
GROUP BY Department_id
HAVING AVG(salary) >
(SELECT AVG(salary)
FROM employees
WHERE Department_id=60)
KERJAKAN.
1. Menampilkan data departemen id yang memiliki gaji minimal
diatas gaji departmen 40
2. Tampilkan nama akhir, gaji, departmen id dari karyawan yang
gajinya sama dengan gaji terkecil disetiap departmen.
3. Tampilkan nama karyawan dan tanggal masuk kerja dari
seluruh karyawan yang memiliki tanggal masuk kerjanya
setelah karyawan yang bernama “Urman”
PRODUCING READABLE OUTPUT
Jika kita menggunakan iSQL*Plus, maka disini mempunyai
suatu kelebihan yakni kita bisa membuat tampilan input di
iSQL*Plus tersebut (Substitution Variable). Penamaan variabel
mengikuti ketentuan sebagai berikut :

1. Penulisan Nama Variabel dimulai dengan


simbol ‘&’
2. Nama variabel tidak boleh lebih dari 30
karakter
3. Nama variabel Tidak boleh menggunakan
simbol-simbol operator dan spasi.

Anda mungkin juga menyukai