Full Join در SQL Server
FULL JOIN تمام رکوردها از جداول مشخص شده را برمی گرداند. این شامل NULL برای هر رکورد غیر منطبق است.
برخی از پایگاه های داده FULL JOIN را به نام FULL OUTER JOIN می شناسند. این نوع join می تواند یک مجموعه نتایج بسیار بزرگ را برگرداند زیرا تمام سطرها را از همه جداول برمی گرداند.
سینتکس آن به صورت زیر است.
برای تفهیم بیشتر، از جداول Employee و Department زیر در همه مثال ها استفاده خواهیم کرد.
جدول Employee :
جدول Department :
اکنون، به عبارت FULL JOIN زیر نگاه کنید.
کویریی بالا نتیجه زیر را نمایش می دهد.
همانطور که می بینید، این تمام رکوردها را از هر دو جدول بر می گرداند. ابتدا، تمام رکوردها را از جدول سمت چپ Employee و سپس تمام رکوردها را از جدول سمت راست Department واکشی می کند. این شامل NULL برای تمام رکوردهای غیر منطبق از هر دو جدول است.
حالا بیایید جداول را عوض کنیم و ببینیم نتیجه چگونه تغییر خواهد کرد.
کویری بالا نتیجه زیر را نمایش می دهد.
همانطور که می بینید این ابتدا تمام رکوردها را از جدول سمت راست Department و سپس رکوردها را از جدول سمت چپ Employee نمایش می دهد. برای تمام رکوردهای غیر منطبق در هر دو جدول، NULL را برمی گرداند.