İçeriğe geç

SQL Alt Sorgu (Subquery) ve CTE Kullanımı: Karmaşık Sorguları Basitleştirin

28.08.2024 3 okunma

Alt Sorgu (Subquery) Nedir?

Bir SQL sorgusu içine gömülmüş başka bir sorgudur. WHERE, FROM ve SELECT içinde kullanılabilir.

WHERE'de Subquery

-- Ortalama fiyatın üzerindeki ürünler
SELECT urun_adi, fiyat
FROM urunler
WHERE fiyat > (SELECT AVG(fiyat) FROM urunler);

EXISTS ile Subquery

-- Sipariş vermiş müşteriler
SELECT adi, email
FROM musteriler m
WHERE EXISTS (
    SELECT 1 FROM siparisler s WHERE s.musteri_id = m.id
);

CTE (Common Table Expression)

WITH AylikCiro AS (
    SELECT
        YEAR(tarih) yil,
        MONTH(tarih) ay,
        SUM(tutar) ciro
    FROM siparisler
    GROUP BY YEAR(tarih), MONTH(tarih)
),
BuyumeOrani AS (
    SELECT yil, ay, ciro,
        LAG(ciro) OVER (ORDER BY yil, ay) AS onceki_ay,
        ciro - LAG(ciro) OVER (ORDER BY yil, ay) AS degisim
    FROM AylikCiro
)
SELECT * FROM BuyumeOrani ORDER BY yil, ay;
sql subquery sql alt sorgu sql cte common table expression sql with ifadesi sql ileri sorgu
İLERİ DÜZEY SQL PROGRAMLAMA hakkında bilgi almak ister misiniz?

Birebir özel yüz yüze eğitim yada uzaktan eğitim, esnek ders saatleri ile Pendik Kurtköy'de.