🟡 SQL JOINs
SQL JOINs: JOIN, iki ayrı dosyada duran verileri ortak bir anahtar üzerinden tek bir tabloymuş gibi birleştirmek için kullanılır — bir hastanedeki 'hastalar' ve 'randevular' dosy
JOIN, iki ayrı dosyada duran verileri ortak bir anahtar üzerinden tek bir tabloymuş gibi birleştirmek için kullanılır — bir hastanedeki 'hastalar' ve 'randevular' dosyaları hasta_id üzerinden JOIN'lenince, her hastanın randevu geçmişini tek satırda görebilirsin. Ama neden veriler tek tabloda tutulmuyor ki, JOIN'e neden gerek var? Çünkü tek tabloda tutsan, aynı hasta bilgilerini her randevu için tekrar tekrar yazman gerekir; bu hem yer israfı hem de veri tutarsızlığı riskidir — normalizasyon bunu önler. Java'da iki ayrı listeyi birleştirmek için iç içe for döngüleri ya da Map index'i kurman gerekir; SQL'de JOIN tek satırda motor tarafından optimize edilmiş biçimde gerçekleştirilir. INNER JOIN sadece her iki tabloda da eşleşen satırları getirir; LEFT JOIN sol tablonun tamamını korur, sağ tarafta eşleşme yoksa NULL yazar — bu fark QA için kritiktir: 'bug raporu olmayan testçileri bul' sorgusu LEFT JOIN gerektirir, INNER JOIN ile bu kişiler tamamen kaybolur ve yanlış PASS elde edilir.
JOIN'ler — Tabloları Birleştirme
JOIN'ler, birden fazla ilişkili tablodan tek sorguda veri almanızı sağlar. Gerçek dünya veritabanlarında veriler tablolar arasında bölündüğünden JOIN'ler vazgeçilmezdir.
Micro Lab: SQL — JOIN sorgulari
TODO satirini beklenen cozumdeki kritik satirla degistir. Bu gercek runtime degil; amac dogru yapinin yazilmasini kontrollu olarak pekistirmek.
Adim Adim: SQL — JOIN sorgulari
Hangi JOIN turu lazim: kesisim icin INNER, sol tam icin LEFT, sag tam icin RIGHT
ON tablo1.id = tablo2.foreign_key ile tablolar arasi baglantı kur
SELECT komutu ile tablo.sutun formatinda hangi sutunlar gorunecek belirt
NULL sonuclari yorumla
LEFT JOIN sonucunda NULL gelen satirlari yorumla: esleme yok demek
JOIN yapilan sutunlar icin INDEX var mi kontrol et — performans kritik
SQL JOIN sorgusunu dogru yazma sirasi nedir?
Alt Sorgular (Subquery)