SQL iki veya daha fazla tablodan satır birleştirmek için kullanılır katılır.
SQL JOIN
Bir SQL JOIN yan tümcesi aralarında ortak bir alana bağlı iki veya daha fazla tablodan satır birleştirmek için kullanılır.
Katılmak en yaygın türüdür: SQL INNER JOIN (simple join) . Bir SQL İÇ döndürür katılmak koşul karşılandığında birden çok tablodan tüm satırları KATILIN.
En bir seçim bakalım "Orders" tablosundaki:
Sipariş Kimliği | Müşteri Kimliği | Sipariş tarihi |
---|---|---|
10308 | 2 | 1996-09-18 |
10309 | 37 | 1996-09-19 |
10310 | 77 | 1996-09-20 |
Sonra, bir seçim de bakabilirsiniz "Customers" tablosunun:
Müşteri Kimliği | Müşteri adı | ContactName | ülke |
---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mexico |
Dikkat edin "CustomerID" sütununda "Orders" tabloya atıfta "CustomerID" in "Customers" tablosundaki. Yukarıdaki iki tablo arasındaki ilişki "CustomerID" sütunu.
Aşağıdaki SQL deyimi çalıştırırsanız Sonra, (that contains an INNER JOIN) :
Örnek
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM
Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;
Kendin dene " Böyle bir şey üretecek:
Sipariş Kimliği | Müşteri adı | Sipariş tarihi |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 9/18/1996 |
10365 | Antonio Moreno Taqueria | 11/27/1996 |
10383 | Around the Horn | 12/16/1996 |
10355 | Around the Horn | 11/15/1996 |
10278 | Berglunds snabbkop | 8/12/1996 |
Farklı bir SQL JOIN
Biz örneklerle devam etmeden önce farklı bir SQL kullanabileceğiniz JOIN nedeniyle, türlerini listeler:
- INNER JOIN : İKİ tablolarda en az bir maç varken tüm satırları döndürür
- LEFT JOIN : Sol tablodan tüm satırları iade ve sağ tablodan eşleşti satırlar
- RIGHT JOIN : Sağ tablodan tüm satırları iade ve sol tablodan eşleşti satırlar
- FULL JOIN : tablolardan ONE bir eşleşme olduğunda tüm satırları iade