PDA

View Full Version : LEFT JOIN ,SELF JOIN



the Dead
چهارشنبه 19 مهر 1385, 06:38 صبح
کاربرد LEFT JOIN , SELF JOIN چیه و چگونه پیاده سازی میشه لطفا مثال بزنید؟
در کوری زیر که LEFT JOIN هست ترتیب قرار گیری جداول نشان دهنده چیست ؟بعد از FROM و بعد از left join


select *
from contacts
left join spouse
on contacts.fantasy_spouse_id = spouse.fantasy_spouse_id
لطفاً با جدول مثال بزنید

reza_rad
چهارشنبه 19 مهر 1385, 15:52 عصر
شما دارید جدول contact رو با spouse جوین می کنید البته left join . و این بعنی:
اگه در جدول اول یعنی contacts شخصی وجود داشت که رکوردی معادلش در جدول دوم نبود( بعنوان مثال در اینجا اگه شخصی بود که همسری نداشت) ، مشخصات جدول دوم رو برای این شخص null نشون بده.

و فرقش با join معمولی یا inner join در اینه که اگه شما اینجا از join معمولی استفاده کنید مشخصات افرادی رو که حتما همسر دارند نشون میده و اگه کسی بود که همسری نداشت نشون داده نمیشه.

در کل left join بین دو تا جدول زمانی استفاده میشه که:
شما اطلاعاتی از جدول اول رو که به ازازی اون مقادیر در جدول دوم مقداری وجود دارد یا ندارد، می خواهید بیرون بکشید.

the Dead
پنج شنبه 20 مهر 1385, 09:16 صبح
تشکر در رابطه با self join هم توضیح دهید لطفاً

reza_rad
شنبه 22 مهر 1385, 15:54 عصر
خواهش می کنم

join کردن یک جدول با خودش رو میگن self join .
در مواردی استفاده میشه که شما یک حالت parent child رو توی یک جدول یپاده می کنی.

مثال:
جدول چارت سازمانی
توی این جدول هر واحد سازمانی یکسری مشخصات داره که داخل فیلدها جا میگیره و یک Parent داره.
حالا شما ممکنه بخوای یک واحد رو با Parent اش بکشی بیرون.
در این مورد جدول رو با خودش join میکنی.

Helen_Farhani
جمعه 03 آذر 1385, 17:52 عصر
خواهش می کنم

join کردن یک جدول با خودش رو میگن self join .
در مواردی استفاده میشه که شما یک حالت parent child رو توی یک جدول یپاده می کنی.

مثال:
جدول چارت سازمانی
توی این جدول هر واحد سازمانی یکسری مشخصات داره که داخل فیلدها جا میگیره و یک Parent داره.
حالا شما ممکنه بخوای یک واحد رو با Parent اش بکشی بیرون.
در این مورد جدول رو با خودش join میکنی.
میشه در این مورد کمی توضیح بدین؟ آخه من متوجه نشدم.