CodeBlanks Logo Icon CodeBlanks

İlişkili alt sorgu

Dış sorguya bağlı alt sorguyu öğrenirsin.

İlişkili alt sorgu

İlişkili alt sorgu dış sorgunun sütunlarını kullanır. Her dış satır için tekrar çalışır.

SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category = p.category);

Bu sorgu kendi kategori ortalamasının üstündeki ürünleri verir.

products p kaynağından name seçilir. WHERE price > (SELECT AVG(price) FROM products WHERE category = … koşulunu sağlamayan satırlar elenir.

İlişkili alt sorgu — ayrıntı

İlişkili alt sorgu dış sorguya bağlıdır. p.category her satırda değişir, alt sorgu tekrar çalışır.

Örneğin her ürünü kendi kategorisinin ortalama fiyatıyla karşılaştırmak için alt sorguda WHERE category = p.category yazarsın.

Uygulama İlişkili alt sorgu

Kendi kategori ortalamasından pahalı ürünleri ilişkili alt sorgu ile bul.

Başlangıç kodu

query.sql
-- kategori ortalaması üstü
SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category =

Örnek çözüm

query.sql
SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category = p.category);

Beklenen çıktı

name
Laptop
Telefon

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 p.category ekle

Soru
SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category = ____);
Cevap
SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category = p.category);

Açıklama: p.category doğru cevap.

2 İlişkili alt sorgu: kavramları eşleştir

Kavram Anlamı
ilişkili dış bağımlı
p.category dış sütun
AVG ortalama
tekrar her satır

3 İlişkili alt sorgu ne kullanır?

  • GROUP BY
  • Dış sorgu sütunu Doğru cevap
  • Yalnız sabit
  • DISTINCT

Açıklama: İlişkili alt sorgu dış sorgunun sütunlarını kullanır.

Orta seviye bölümündeki tüm dersler