İlişkili alt sorgu
- SQL kursu
- Orta seviye
- Ders 51/115
- 4 dk
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
-- kategori ortalaması üstü
SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category =Örnek çözüm
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
SELECT name FROM products p
WHERE price > (SELECT AVG(price) FROM products WHERE category = ____);
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.