SQL RIGHT JOIN Keyword
زبان SQL برای اینکه همه رکوردهای جدول سمت راست نمایش داده بشن (حتی اگه در جدول سمت چپ دادهٔ مطابق نداشته باشن)، از RIGHT JOIN یا RIGHT OUTER JOIN استفاده میکنیم.
🔹 ساختار کلی
-
تمام رکوردهای جدول سمت راست (
table2) انتخاب میشن. -
اگر در جدول سمت چپ (
table1) مقدار مطابق وجود داشته باشه، نمایش داده میشه. -
اگر مطابق وجود نداشته باشه، مقادیر ستونهای جدول سمت چپ
NULLخواهند بود.
🔹 مثال ساده
جدول: Customers
| id | name | city |
|---|---|---|
| 1 | Ali | Tehran |
| 2 | Sara | Mashhad |
| 3 | Reza | Tabriz |
جدول: Orders
| order_id | customer_id | amount |
|---|---|---|
| 101 | 1 | 500 |
| 102 | 2 | 300 |
| 103 | 4 | 700 |
کوئری:
📌 خروجی:
| name | amount |
|---|---|
| Ali | 500 |
| Sara | 300 |
| NULL | 700 |
توضیح: سفارش با customer_id = 4 مشتری مرتبطی در جدول Customers نداره، ولی چون از RIGHT JOIN استفاده شده، باز هم در خروجی اومده و مقدار name براش NULL شده.
🔹 استفاده از Alias
🔹 RIGHT JOIN در مقابل LEFT JOIN
-
LEFT JOINهمه رکوردهای جدول سمت چپ رو میاره. -
RIGHT JOINهمه رکوردهای جدول سمت راست رو میاره. -
در عمل، این دو معادل هم هستن؛ فقط بستگی داره کدوم جدول رو به عنوان سمت اصلی در نظر بگیری.
✅ نکات مهم
-
RIGHT JOINوRIGHT OUTER JOINیکی هستن (OUTER اختیاریه). -
بیشتر برنامهنویسها ترجیح میدن به جای RIGHT JOIN از LEFT JOIN استفاده کنن (چون خوانایی بالاتری داره).
-
در دیتابیسهایی مثل MySQL، Oracle، SQL Server همه به همین شکل پشتیبانی میشه.
HTML
Tailwind Css
Bootstrap 5
Java script
++C
Python
Three.js
Gsap
Sass
SQL
React