آژانس هواپیماییexchanging

INNER JOIN , LEFT JOIN , RIGHT JOIN

شروع موضوع توسط Helen_Farhani ‏3 سپتامبر 2007 در انجمن زبان T-SQL

  1. Helen_Farhani

    Helen_Farhani کاربر تازه وارد

    تاریخ عضویت:
    ‏30 مارس 2007
    نوشته ها:
    89
    تشکر شده:
    0
    تفاوت INNER JOIN , LEFT JOIN , RIGHT JOIN در چی هست؟ من متوجه کارایی و تفاوت اینها نمیشوم.

    ممنون​
     
  2. CZed

    CZed کاربر تازه وارد

    تاریخ عضویت:
    ‏6 سپتامبر 2007
    نوشته ها:
    145
    تشکر شده:
    0
    محل سکونت:
    Tehran
    همونطوری که میدونین join قراره که اطلاعات رو از دو جدول بگیره و نمایش بده که برای اینکار معمولا از یک کلید استفاده میشه. مثلا دو جدول T1 و T2 رو داریم.
    کد:
    T1        T2
    ---      ---
    1         3
    2         5
    3         8
    
    وقتی که بگیم T1 LEFT JOIN T2 ON T1.Key = T2.Key در این صورت همه رکوردهای T1 در خروجی ظاهر میشن. از رکوردهای T2 فقط اونایی ظاهر میشن که کلیدشون تو T1 پیدا بشه. یعنی نیجه اینطوری میشه:
    کد:
    1	NULL
    2	NULL
    3	3
    
    وقتی که INNER JOIN استفاده بشه تو نتیجه فقط اون رکوردهایی میاد که تو هر دو جدول باشن:
    کد:
    3	3
    
    وقتی که RIGHT JOIN استفاده بشه رکوردهای جدول راست میان، اون رکوردهایی از سمت چپی انتخاب میشن که کلیدشون تو جدول راستی باشه:
    کد:
    3	3
    NULL	5
    NULL	8
    
    برای مثال بهتر با داده های بهتر به اینجا مراجعه کنین.
     
  3. Helen_Farhani

    Helen_Farhani کاربر تازه وارد

    تاریخ عضویت:
    ‏30 مارس 2007
    نوشته ها:
    89
    تشکر شده:
    0
    ممنون از توضیحاتی که دادین