فرض کنید که دو جدول در یک پایگاه داده وجود دارند که بین آنها ارتباط از نوع یک به چند می باشد.
با ارتباط Inner join بین دو جدول و انتخاب فیلدهایی از دو جدول در یک پرس و جو، تنها رکوردهایی از هر جدول در نتیجه مشاهده خواهند شد که به ازای فیلد کلید اصلی یا خارجی آنها مقداری در جدول دیگر موجود باشد.
به طور مثال در ارتباط بین دو جدول فرضی مشتری ها و سفارش ها اگر یک مشتری هیچ سفارشی ثبت نکرده باشد، در پرس و جوی سفارش های هر مشتری دیده نخواهد شد.
حال برای آشنایی با مفهوم Outer Join به مثال زیر توچه کنید :
یک جدول برای ثبت نام بخش ها یا دپارتمان های یک شرکت با تنظیمات زیر می سازیم.
و اطلاعات زیر را درون آن درج می کنیم.
جدول بعدی ما اطلاعات کارمندان شرکت و مخصوصا اینکه هر شخص به چه دپارتمانی تعلق دارد را در خود ذخیره می کند.
حال برای آشنایی با مفهوم Left Outer Join در نمای طراحی یک پرس و جوی جدید به SQL View می رویم و کد زیر را در آن می نویسیم.
SELECT Employees.EmployeeNumber, Employees.FirstName, Employees.LastName, Departments.Department, Employees.Title FROM Departments LEFT OUTER JOIN Employees ON Departments.Code = Employees.DepartmentCode;
نتیجه اجرا به صورت زیر خواهد بود.
درحالیکه اگر همین پرس و جو را به دستور Right Outer Join بنویسیم نتیجه به صورت زیر خواهد بود :