MySQL JOIN turlari
MySQL JOIN bandi
JOIN bandi ikki yoki undan ortiq jadvallar qatorlarini ular orasidagi tegishli ustun asosida birlashtirish uchun ishlatiladi.
MySQL-da JOINning turli xil turlari:
- INNER JOIN: Faqat ikkala jadvaldagi qiymatlari mos keladigan qatorlarni qaytaradi
- LEFT JOIN: Chap jadvaldagi barcha qatorlarni va o‘ng jadvaldan faqat mos keladigan qatorlarni qaytaradi
- RIGHT JOIN: o‘ng jadvaldagi barcha qatorlarni va chap jadvaldan faqat mos keladigan qatorlarni qaytaradi
- CROSS JOIN: Ikki yoki undan ortiq jadvallarning dekart mahsulotini qaytaradi
"Orders" jadvalidagi buyurtmaga qarang:
| OrderID | CustomerID | OrderDate |
|---|---|---|
| 10308 | 2 | 1996-09-18 |
Keyin, "Mijozlar" jadvalidagi mijozga qarang:
| CustomerID | CustomerName | ContactName | Country |
|---|---|---|---|
| 2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
Bu yerda biz "Orders" jadvalidagi "CustomerID" ustuni "Customers" jadvalidagi "CustomerID" ga ishora qilishini ko‘ramiz. Yuqoridagi ikki jadval o‘rtasidagi munosabat "CustomerID" ustunidir.
Keyin ikkala jadvalda mos qiymatlarga ega yozuvlarni tanlaydigan quyidagi SQL buyrug‘ini (u INNER JOIN’ni o‘z ichiga oladi) yaratishimiz mumkin:
Misol
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
O‘zingiz sinab ko‘ring »
va shunga o‘xshash narsalarni ishlab chiqaradi:
| OrderID | CustomerName | OrderDate |
|---|---|---|
| 10308 | Ana Trujillo Emparedados y helados | 1996-09-18 |
| 10365 | Antonio Moreno Taquería | 1996-11-27 |
| 10383 | Around the Horn | 1996-11-15 |
| 10355 | Around the Horn | 1996-12-16 |
| 10278 | Berglunds snabbköp | 1996-12-16 |
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
