SQL'de birleştirme (join) işlemi, farklı tablolardaki verileri birleştirmek için kullanılır 12. İşte bazı yaygın birleştirme türleri:
- INNER JOIN: İki tablodaki eşleşen kayıtları getirir 12. Sadece eşleşen kayıtlar görünür, eşleşmeyenler hariç tutulur 2.
SELECT m.musteri_id, m.isim, s.siparis_tarihi FROM Musteriler m INNER JOIN Siparisler s ON m.musteri_id = s.musteri_id;
- LEFT JOIN (veya LEFT OUTER JOIN): Sol tablodaki tüm kayıtları ve sağ tablodaki eşleşen kayıtları getirir 12. Sağ tabloda eşleşme yoksa, bu kayıtlar NULL ile dönülür 12.
SELECT m.musteri_id, m.isim, s.siparis_tarihi FROM Musteriler m LEFT JOIN Siparisler s ON m.musteri_id = s.musteri_id;
- RIGHT JOIN (veya RIGHT OUTER JOIN): Sağ tablodaki tüm kayıtları ve sol tablodaki eşleşen kayıtları getirir 12. Sol tabloda eşleşme yoksa, bu kayıtlar NULL ile dönülür 12.
SELECT s.siparis_id, s.urun_adi, m.isim FROM Siparisler s RIGHT JOIN Musteriler m ON s.musteri_id = m.musteri_id;
- FULL OUTER JOIN: İki tablodaki tüm kayıtları getirir 12. Her iki tabloda da eşleşme yoksa, karşı tablodan gelen değer NULL ile dönülür 1.
SELECT m.musteri_id, m.isim, s.urun_adi FROM Musteriler m FULL OUTER JOIN Siparisler s ON m.musteri_id = s.musteri_id;
- CROSS JOIN: İki tablodaki tüm kayıtları birbirleriyle eşleştirir ve kartezyen çarpımını oluşturur 1.
SELECT u.urun_adi, k.kategori_adi FROM Urunler u CROSS JOIN Kategoriler k;
5 kaynaktan alınan bilgiyle göre: