Astawan News

Query Dalam Query

Query dalam Query adalah suatu teknik dalam database untuk mendapatkan data yang lebih spesifik dari query yang sebelumnya. Pada implementasinya teknik ini sangat mudah, tidak membutuhkan teknik logika yang sulit. Dalam teknik ini yang perlu diperhatikan hanya query yang kita query lagi harus diberikan alias.

Teknik ini biasanya digunakan untuk menampilkan data yang jenisnya komplek. Teknik ini sebenarnya sama seperti melakukan query pada suatu view.
Contoh:
Select a.* from barang as a, kelompokbarang as b where a.kodekel=b.kodekel;

select * from (Select a.* from barang as a, kelompokbarang as b where a.kodekel=b.kodekel) as c where kodebrg='111111';

Query yang kita query lagi harus diberikan alias.

Pada database Microsoft Access, teknik ini leluasa dapat dilakukan, sedangkan pada MySQL, teknik ini dapat dilakukan mulai versi 5.x.

Dalam pengkolaborasian dengan coding program, teknik ini sangat mudah dilakukan, namun jika data yang diquery besar, akan menimbulkan masalah kelambatan.

Contoh implementasi pada program yang dibuat untuk menampilkan data statistik penjualan.
select * ,khargajual-ktotaldisc as khargajualnet, khargabeli-rhargabeli as khargabeliretur,rhargajual-rtotaldisc as rhargajualnet,kqty-rqty as kqtyretur, khargajual-khargabeli as kprofit, (khargajual-khargabeli) * 100/khargabeli as kpersen,(khargajual-rhargajual)-(khargabeli-rhargabeli) as kprofitretur, ((khargajual-rhargajual)-(khargabeli-rhargabeli)) * 100/(khargabeli-rhargabeli) as kpersenretur,(khargajual-ktotaldisc) - (rhargajual-rtotaldisc) as khargajualnetretur, (khargajual-ktotaldisc)-khargabeli as kprofitnet,((khargajual-ktotaldisc)-khargabeli) * 100/khargabeli as kpersennet,((khargajual-ktotaldisc)-(rhargajual-rtotaldisc))-(khargabeli-rhargabeli) as kprofitnetretur,(((khargajual-ktotaldisc)-(rhargajual-rtotaldisc))-(khargabeli-rhargabeli)) * 100/(khargabeli-rhargabeli) as kpersennetretur from (select kodebrg,namabrg,namal1, namal2, namal3, if(isnull(akhir)=true,0,akhir) as akhir,kkodebrg ,if(isnull(kqty)=true,0,kqty) as kqty,if(isnull(khargajual)=true,0,khargajual) as khargajual,if(isnull(ktotaldis
c)=true,0,ktotaldisc) as ktotaldisc, if(isnull(khargabeli)=true,0,khargabeli) as khargabeli,rkodebrg,if(isnull(rqty)=true,0,rqty) as rqty,if(isnull(rhargabeli)=true,0,rhargabeli) as rhargabeli,if(isnull(rtotaldisc)=true,0,rtotaldisc) as rtotaldisc, if(isnull(rhargajual)=true,0,rhargajual) as rhargajual   from tempbarangs as a  left join tempJualS as b  on a.kodebrg=b.kkodebrg  left join tempReturS as c  on a.kodebrg=c.rkodebrg) as final

 

Astawan News

About Astawan News -

Author Description here.. Nulla sagittis convallis. Curabitur consequat. Quisque metus enim, venenatis fermentum, mollis in, porta et, nibh. Duis vulputate elit in elit. Mauris dictum libero id justo.

Subscribe to this Blog via Email :