..
Kim SQL bilgisi JOIN ne olduğunu bilir. Bizim kılavuzları ve diğer makalelerde JOIN ve nasıl bir veritabanında farklı tablolar arasındaki ilişkileri nasıl oluşturabileceğinizi açıkladı.
En sık gereksinim kesin bulur ve döndürür yazışma tatmin alanları dahil iki veya daha fazla tablo içinde aranan INNER JOIN yan tümcesi kurtarır bu durumda iki tablo arasında eşleşmeleri bulmak için JOIN cihaz tarafından memnun JOIN içinde.
Aksine daha az sezgisel JOIN içinde bir maç yok alanları tanımlamak için ihtiyaç vardır.
Bir örnek verelim.
Bir e-ticaret veritabanı sadece iki tablo oluşur yönetmek istediğinizi varsayalım:
Ilk gereksinimi karşılamak için, tabii ki, oldukça basittir:
SEÇ CUSTOMER.FIRST, CUSTOMER.LAST Müşteriler DAN INNER JOIN Siparişler = Clienti.id ordini.id_cliente AÇIK ASC CUSTOMER.LAST ORDER BYve şimdiye kadar hiçbir sorun.
Peki sonuç tersine çevirmek için ne yapabiliriz?
Şey ...
İlk olarak, bir INNER JOIN kullanabilirsiniz, ancak bir SOL Ancak, sol tablodan sonuç yine döndürülür tam ancak kısmi olmayan bir maç bulmak için JOIN yoktur.
Bu olmadan biz kayıtları NULL (SQL NULL değer bir yokluğu tanımlayan "özel değer" bir tür olarak tanımlanır olarak tanımlanan (yani rapor bulunmayan) eksik (WHERE yan tümcesi kullanarak) bakacağız ..)
Kodu görelim:
SEÇ CUSTOMER.FIRST, CUSTOMER.LAST Müşteriler DAN Siparişler LEFT JOIN = Clienti.id ordini.id_cliente AÇIK NULL ordini.id_cliente NEREDE ASC CUSTOMER.LAST ORDER BYSonuç olarak, aslında, bir şey satın hiç müşterilerimizin isimleri listesidir.
| |
MS Access (Gelişmiş)
Hızlı ve kolay bir veritabanı oluşturmak ve yönetmek öğrenin. 29 € dan başlayan fiyatlarla. |
| |
MySQL (Ders)
Açık kaynak veritabanı yönetimi. En düşük € 39. |
| |
SQL ve Veritabanı (Ders)
Ilişkisel veritabanı oluşturma ve yönetme. En düşük € 39. |