Badursun

MySQL Dependent Subquery ve Independent Subquery nedir?

MySQL veritabanında performans için çalışırken genelde EXPLAIN komutunu kullanırız. Burada bize bazı değerler gösterir ve bizi performansı arttırmak için ne tür bir yol izlememiz konusunda bilgilendirir.

Tabii bu değerleri ve anlamları bilmiyorsak, yolumuzu da bulamayız. Bu noktada bazı değerleri anlatmam gerektiğini düşündüğüm için ufak ufak bu tür soruları ve cevaplarını paylaşacağım.

Dependent Subquery Nedir ?

Eğer join kullanımı esnasında bir subquery kullanıyorsanız ve bu sub query içerisinde, ana sorgudan bir değer, referans içeriyorsa, açıklama bölümündeki ilişkilerde bu sorgu için Dependent Sunquery olarak gözükür. Küçük bir örnek verecek olursak;

SELECT * FROM tablo1 T1 WHERE (1) = ( SELECT COUNT(DISTINCT(T2.SATISLAR)) FROM tablo2 T2 WHERE T2.SATISLAR > T.SATISLAR);

Independent Subquery Nedir ?

Independet ise, Dependetn’in aksine içinde, dış sorgudan herhangi bir değer veya referans almıyorsa Independent Query olarak nitelendirilir. Yani bağımsız sorgudur.

Buna da küçük bir örnek verecek olursak

SELECT * FROM tablo1 T1 WHERE (1) = ( SELECT COUNT(DISTINCT(T2.SATISLAR)) FROM tablo2 T2 WHERE T2.SATISLAR > 100);

 

Leave a Comment

Your email address will not be published. Required fields are marked *

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.