جوین راست (RIGHT JOIN)
جوین راست (RIGHT JOIN) همه ردیف های جدول «راست» را نگه می دارد. سپس، اگر در جدول «چپ» تطابق باشد، کنارشان می آید. اگر نباشد، ستون های چپ تهی می مانند. مثل فهرست همه کلاس ها، حتی کلاس های بدون دانش آموز.
تعریف کوتاه و کاربرد
RIGHT JOIN یعنی: «همه راست + فقط تطابق های چپ». «تطابق» یعنی برابری ستون های مرتبط؛ معمولاً «کلید خارجی (Foreign Key)». وقتی می خواهی فهرست کامل دسته ها را ببینی، عالی است.
مثال از منبع
اتصال testproducts به categories با ستون category_id؛ همه دسته ها می آیند، حتی بی محصول ها.
SELECT testproduct_id, product_name, category_name
FROM testproducts
RIGHT JOIN categories ON testproducts.category_id = categories.category_id;
نکات مهم RIGHT JOIN
- RIGHT JOIN با RIGHT OUTER JOIN برابر است.
- ردیف های بدون تطابق حذف نمی شوند؛ ستون های چپ تهی اند.
- ایندکس گذاری روی ستون های جوین، اجرا را سریع تر می کند.
گام های سریع اجرا
- ستون مرتبط را پیدا کن؛ مثلاً
category_id. - جدول راست و چپ را مشخص کن.
- کوئری RIGHT JOIN را اجرا کن و نتیجه را بسنج.
نکته: اگر فهرست کامل «چپ» را می خواهی، از LEFT JOIN استفاده کن. برای پوشش کامل دو طرف، بعداً FULL JOIN را ببین.
جمع بندی سریع
- RIGHT JOIN همه راست را نگه می دارد.
- تطابق های چپ کنارشان می آیند.
- بدون تطابق، ستون های چپ تهی اند.
- OUTER نوشتن اختیاری است.