Macam Macam Subquery dan Contohnya

Subquery

Subquery yaitu statmenet SELECT yang diembedkan dalam klausa selain statmenet SELECT.


Sebelum saya contohkan macam - macam dari subquery, saya menggunakan data base yang telah saya buat terlebih dahulu untuk melihatnya anda bisa KLIK DISINI

SUBQUERY BARIS TUNGGAL 
Merupakan suatu query yang memiliki subquery dengan hasil satu. Hasil yang dimaksud bukanlah data yang dihasilkan dari query tersebut melainkan hasil yang dihasilkan oleh suatu subquery yang digunakan dalam sebuah query. Contoh penggunaan subquery:

Script :
mysql> select nip, gaji from pekerjaan_06 where gaji=(select max(gaji) from pekerjaan_06);
Hasilnya :


Script :
select nip, gaji from pekerjaan_06 where kode_bagian=(select kode_bagian from bagian_06 where nama_bagian="Pemasaran");
Hasilnya :



SUBQUERY BARIS GANDA
merupakan suatu query yang memiliki subquery dengan hasil lebih dari satu. Hasil yang dimaksud bukanlah data yang dihasilkan dari query tersebut melainkan hasil yang dihasilkan oleh suatu subquery yang digunakan dalam sebuah query. Dalam subquery ganda kita dapat menggunakan klausa in, exists, any, dan all

Subquery baris gandaklausa IN
Script :
mysql> select nip, kode_bagian from pekerjaan_06 where kode_bagian in (select distinct pekerjaan_06.kode_bagian from pekerjaan_06, infoprib_06 where pekerjaan_06.nip=infoprib_06.nip and infoprib_06.nama like '%i');
Hasilnya :


Script :
mysql> select distinct pekerjaan_06.kode_bagian from pekerjaan_06, infoprib_06 where pekerjaan_06.nip=infoprib_06.nip and infoprib_06.nama like '%i';
Hasilnya :



Selain itu kita juga bisa menggunakan klausa not in
Script :
mysql> select nip, kode_bagian from pekerjaan_06 where kode_bagian not in (select distinct pekerjaan_06.kode_bagian from pekerjaan_06, infoprib_06 where pekerjaan_06.nip=infoprib_06.nip and infoprib_06.nama like '%i');
Hasilnya :


SUBQUERY BARIS GANDA KLAUSA EXISTS
Contoh
Script :
mysql> select nip, kode_bagian from pekerjaan_06 where exists(select * from bagian_06 where kode_bagian=pekerjaan_06.kode_bagian);
Hasilnya :

dan
Script



Pada hasil diatas maka akan menampilkan seluruh data pada tabel pekerjaan karena seluruh kode_bagian yang ada di pekerjaan terdapat pada kode_bagian yang ada di bagian. Dan hasil juga tidak akan tampil ketika ditambahkan klausa not. Untuk itu selanjutanya adalah melakukan update data pada tabel pekerjaan dengan mengganti kode_bagian yang tadinya bernilai “1” menjadi “9”.


Kemudian lakukan kembali perintah untuk klausa exist
Script :
mysql> select nip, kode_bagian from pekerjaan_06 where exists(select * from bagian_06 where kode_bagian=pekerjaan_06.kode_bagian);
Hasilnya :


Script :
mysql> select nip, kode_bagian from pekerjaan_06 where not exists(select * from bagian_06 where kode_bagian=pekerjaan_06.kode_bagian);
Hasilnya :




SUBQUERY BARIS GANDA KLAUSA ALL 
Contoh :
Script :
mysql> select nip, gaji from pekerjaan_06 where gaji< all(select gaji from pekerjaan_06 where kode_bagian="3");

Hasilnya :



SUBQUERY BARIS GANDA KLAUSA ANY
Contoh
Script :
mysql> select nip, gaji from pekerjaan_06 where gaji> any(select gaji from pekerjaan_06);
Hasilnya :





Sekian informasi mengenai Macam Macam Subquery dan Contohnya
Terimakasih semoga bermanfaat



Comments

Popular posts from this blog

ROM Touchwizmod V4 For Samsung J1 Ace SM-J111F / J111M

Cara Instal TWRP SAMSUNG J1 Ace SM-J111F / SM-J111M

Program Menghitung berat dan tinggi badan ideal dan Program peritungan Jumlah Kalori, Protein, dan Lemak dalam C++