Langsung ke konten utama

Pengertian dan Contoh Subquery Pada ORACLE


Subquery merupakan suatu query seperti halnya query biasa yang berjalan di dalam query induk / master. Sub query dapat digunakan untuk mengambil suatu data di field / kolom pada tabel lain. Misalnya kita memiliki tabel seperti berikut :
Tabel 1 : (Identitas)
NamaNo_TelpPekerjaanKode_Kota
Dwiky0219857348DeveloperJKT01
Ilham0219378474DeveloperJKT01
Wilda0219374556AkuntanBDG01



Tabel 2 : (Data_Kota)

Kode_Kota*Nama_Kota
JKT01JAKARTA
BDG01BANDUNG
DPS02DENPASAR


Disini kita memiliki 2 tabel, Tabel 1 diberi nama Identitas dan Tabel 2 diberi nama Data_Kota
Kemudian kita ingin menampilkan Nama Kota pada Tabel 1. Sedangkan Tabel 1 tidak memiliki kolom “Nama_Kota”, untuk itu kita dapat menggunakan Subquery untuk menampilkan Kolom Nama Kota.
Berikut ini Querynya :
1
2
3
</div>
<div style="text-align: justify;"><span style="font-family: Courier New, Courier, monospace;"><span style="color: blue;"><b>SELECT </b></span>Nama, No_Telp, Pekerjaan, Kode_Kota, (<span style="color: blue;"><b>SELECT </b></span><span style="color: purple;"><b>T2</b></span>.Nama_Kota <span style="color: blue;"><b>FROM </b></span>Data_Kota <span style="color: purple;"><b>T2 </b></span>WHERE <span style="color: purple;"><b>T1</b></span>.Kode_Kota = <span style="color: purple;"><b>T2</b></span>.Kode_Kota) <span style="color: blue;"><b>AS </b></span>Nama_Kota <b><span style="color: blue;">FROM</span> </b>Identitas <span style="color: purple;"><b>T1</b></span>;</span></div>
<div style="text-align: justify;"
Subquery yang dimaksud pada Query diatas yaitu :
1
2
3
</div>
<div style="text-align: justify;"><span style="font-family: 'Courier New', Courier, monospace;">(</span><span style="color: blue; font-family: 'Courier New', Courier, monospace;"><b>SELECT </b></span><span style="color: purple; font-family: 'Courier New', Courier, monospace;"><b>T2</b></span><span style="font-family: 'Courier New', Courier, monospace;">.Nama_Kota </span><span style="color: blue; font-family: 'Courier New', Courier, monospace;"><b>FROM </b></span><span style="font-family: 'Courier New', Courier, monospace;">Data_Kota </span><span style="color: purple; font-family: 'Courier New', Courier, monospace;"><b>T2 </b></span><span style="font-family: 'Courier New', Courier, monospace;">WHERE </span><span style="color: purple; font-family: 'Courier New', Courier, monospace;"><b>T1</b></span><span style="font-family: 'Courier New', Courier, monospace;">.Kode_Kota = </span><span style="color: purple; font-family: 'Courier New', Courier, monospace;"><b>T2</b></span><span style="font-family: 'Courier New', Courier, monospace;">.Kode_Kota) <b><span style="color: blue;">AS</span></b> </span><span style="font-family: 'Courier New', Courier, monospace;">Nama_Kota</span></div>
<div style="text-align: justify;"
T1 Merupakan Alias untuk Tabel Identitas dan T2 merupakan Alias untuk tabel Data_Kota
Alias tersebut digunakan untuk mempermudah menuliskan nama tabel. Selain itu pada tabel 1 dan tabel 2 terdapat nama kolom/field yang sama dan keduanya dipanggil bersamaan pada satu query sehingga jika tidak memakai Alias, maka sistem database tidak mengetahui yang mana kolom/field milik Tabel 1 dan kolom/field milik Tabel 2.
Mari kita bahas satu persatu maksud dari sub query diatas:
 
SELECT T2.Nama_Kota
Yaitu Menampilkan Kolom/Field Nama_Kota
FROM Data_Kota T2
Dari Tabel Data_Kota dengan Alias T2
WHERE T1.Kode_Kota = T2.Kode_Kota
Yang mana Kode_Kota pada tabel 1(Identitas) sama dengan Kode_Kota pada tabel 2(Data_Kota)
AS Nama_Kota
Yang hasil dari querynya diberi nama kolom Nama_Kota
Query tersebut ada di dalam query :
SELECT Nama, No_Telp, Pekerjaan, Kode_Kota, (XXXXXXXXX) FROM Identitas T1;
Jika dijalankan maka hasil yang di dapat yaitu :
NamaNo_TelppekerjaanKode_KotaNama_Kota
Dwiky0219857348DeveloperJKT01JAKARTA
Ilham0219378474DeveloperJKT01JAKARTA
Wilda0219374556AkuntanBDG01BANDUNG
Apabila anda baru mempelajari perintah query, untuk lebih memudahkan ada baiknya anda membaca terlebih dahulu Pengertian DDL, DML dan SQL. 

Komentar

Postingan populer dari blog ini

KONFIGURASI DYNAMIC NAT DAN DYNAMIC NAT OVERLOAD (PAT)

A. Pengertian 1. Dynamic Nat & Dynamic Nat Overload (PAT) NAT Dynamic digunakan untuk menerjemahkan beberapa IP lokal ke beberapa IP global ataupun sebaliknya. Proses penerjemahannya secara  dynamic , jadi pada translasi IP nya tidak selalu sama seperti NAT Static. Ketidakefektifan pada NAT Dynamic adalah jumlah IP global yang dibutuhkan untuk mentranslasikan IP lokal harus sama  (n to n mapping) , misalnya kita ingin mentranslasikan 10 IP lokal ke global maka dibutuhkan 10 IP global/publik. Jika kita punya 11 IP  Private , tapi hanya punya 10 IP Publik sudah dapat dipastikan bahwa ada 1 IP  Private  yang tidak dapat ditranslasikan pada saat yang bersamaan. Untuk menanggulangi ketidakefektifan NAT dynamic, muncullah solusi baru yakni NAT Dynamic Overload atau yang biasa dikenal dengan nama Port Address Translation (PAT). Pada NAT Overload jumlah IP publik yang dibutuhkan tidak harus sama dengan jumlah IP Private yang mau ditranslasikan ( n to m ...

Menggunakan Single Row Function dan Group Function

Tujuan Fungsi-fungsi membuat blok query dasar menjadi lebih cepat, dan fungsi-fungsi tersebut digunakan untuk memanipulasi nilainilai data. Ini adalah bagian pertama dari dua pelajaran yang mengupas fungsi-fungsi. Bagian pertama ini berpusat pada fungsifungsi singlerow functions karakter, angka dan tanggal, seperti adanya fungsi-fungsi tersebut yang digunakan untuk merubah data dari satu tipe ke tipe lainnya ( sebagai contoh, konversi dari data karakter ke data angka). Secara garis besar Oracle database built-in function dibagi dalam dua bagian, yaitu: Single-row function  dan  Group Function . Single-row function : Memproses satu baris data pada satu saat dan memberikan satu output untuk setiap satu baris data masukan. Contoh: single-row functions adalah UPPER yang berfungsi mengubah data input menjadi huruf capital Group Function : Memproses multi-row data pada saat bersamaan dan memberikan satu output. Contoh group function adalah SUM untu...

KONFIGURASI STATIC NAT PADA CISCO PACKET TRACER

A. Pengertian Nat NAT adalah (Bahasa Inggris:Network Address Translation) adalah suatu metode untuk menghubungkan lebih dari satu komputer ke jaringan internet dengan menggunakan satu alamat IP. Banyaknya penggunaan metode ini disebabkan karena ketersediaan alamat IP yang terbatas, kebutuhan akan keamanan (security), dan kemudahan serta fleksibilitas dalam administrasi jaringan. B. Langkah Kerja 1. Topologi Jaringan Keterangan : IP PUBLIC 202.100.100.100 Router 0 : Gig0/0 10.10.10.1/30                Gig0/1 192.168.10.1/24 Router 1 : Gig0/0 10.10.10.2/30                Gig0/1 192.168.20.1/24 Server     :  192.168.20.2/24 PC0         :  192.168.10.2/24 PC1         :  192.168.10.3/24 2. Sebelum melakukan konfigurasi pada setiap router, sebaiknya terlebih dahulu kita masukan alamat Ip Address ...