CodeBlanks Logo Icon CodeBlanks

NOT EXISTS

Bir koşula uymayan kayıtları bulmayı öğrenirsin.

NOT EXISTS

NOT EXISTS alt sorgunun hiç satır döndürmediğini denetler. Anti-join yerine geçer.

SELECT name FROM customers c
WHERE NOT EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = c.id);

Bu sorgu siparişi olmayan müşterileri verir.

customers c kaynağından name seçilir. WHERE NOT EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = … koşulunu sağlamayan satırlar elenir.

NOT EXISTS — ayrıntı

NOT EXISTS ile 'olmayan' kayıtları bulursun. LEFT JOIN ... IS NULL'a alternatiftir.

Örneğin WHERE NOT EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = c.id) hiç sipariş vermemiş müşterileri bulur.

Uygulama NOT EXISTS

Siparişi olmayan müşterileri NOT EXISTS ile bul.

Başlangıç kodu

query.sql
-- sipariş yok
SELECT name FROM customers c
WHERE

Örnek çözüm

query.sql
SELECT name FROM customers c
WHERE NOT EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = c.id);

Beklenen çıktı

name
Fatma
Ali

Soru ve cevaplar

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

1 NOT ekle

Soru
SELECT name FROM customers c
WHERE ____ EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = c.id);
Cevap
SELECT name FROM customers c
WHERE NOT EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = c.id);

Açıklama: NOT EXISTS alt sorgu hiç satır döndürmüyorsa doğrudur; siparişi olmayan müşterileri bulur.

2 NOT EXISTS ne bulur?

  • Olmayanı Doğru cevap
  • Olanı
  • Tümünü
  • Birini

Açıklama: NOT EXISTS olmayan kayıtları bulur.

3 NOT EXISTS: kavramları eşleştir

Kavram Anlamı
NOT EXISTS olmayan
EXISTS varlık
anti-join eksik kayıt
NULL boş

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