عملگرها در پایگاه داده
در جبر معمولی دادهها اعداد حقیقی و چهار عملگر اصلی است. عملگرهای دیگر برای ساده کردن عملگرهای ابتدایی استفاده میشوند. در جبر منطقی نوع داده {True , False} بوده و عملگرهایش AND , OR , NOT است. به مجموعهای از قوانین و عملگرها که امکان پردازش جداول را فراهم میسازند را جبر رابطهای میگویند. در این نوشته به بررسی عملگرهای مرسوم و موجود در بحثهای پایگاه داده و دیتابیس میپردازیم.
پیشنهاد نویسنده: دستورات تعریف در بانک اطلاعاتی را بخوانید.
عملگرها در پایگاه داده
انواع عملگرها در جبر رابطهای
- عملگرهای ساده شامل گزینش و پرتو.
- عملگرهای مجموعهای شامل اجتماع، اشتراک و تفاضل.
- عملگرهای پیوند شامل ضرب دکارتی، پیوند طبیعی، نیم پیوند، پیوند شرطی و فراپیوند.
- عملگرهای دیگر مثل نامگذاری، تقسیم، جایگزینی و …
خاصیت بسته بودن در پایگاه داده
- وقتی خروجی حاصل از هر عمل رابطهای یک رابطه دیگر است، خاصیت بسته بودن یا بستار (closure) نام دارد. در واقع بستار به معنای عبارات رابطهای تودرتو است.
- خروجی عملگرهای مدل رابطهای یک جدول است که عملیات در آنها به صورت مجموعه در یک زمان است و نه به صورت سطر در یک زمان.
- در اکثر اوقات به جای متغیر رابطهای از اصطلاح رابطه استفاده میشود.
پیشنهاد نویسنده: نرمال سازی در بانک اطلاعاتی را بخوانید.
عملگر گزینش در پایگاه داده
- عملگر گزینش سطرهایی از جدول را میدهد. برای این عملگر از نمادهای σ ،select و restrict استفاده شود.
- در نماد σ، نام جدول جلوی علامت σ در پرانتز و شرط انتخاب سطرها زیر آنها نوشته میشود. در این عملگر تمام ستونهای آن جدول در خروجی میآید.
- علامت ^ به معنای AND است.
عملگر پرتو در پایگاه داده
- عملگر پرتو یا تصویر ستونهایی از جدول را انتخاب میکند و برای آن هیچ گونه شرطی اعمال نمیگردد.
- خروجی پرتو سطرهای تکراری حذف خواهد کرد؛ زیرا خروجی این عملگر یک رابطه است و در رابطه هیچگاه سطر تکراری نداریم.
- نماد این عملگر Π یا project است.
- هنگام استفاده از Π ستونهای انتخاب شده زیر علامت Π و نام جدول جلوی علامت Π در داخل پرانتز نوشته میشود.
- با ترکیب کردن علامت σ و Π اطلاعات بیشتری از جداول بدست میآید.
عملگر ∪ و ∩ و – در پایگاه داده
- اجتماع دو رابطه، رابطهای است که تاپلهایش در یک یا هر دو رابطه وجود دارند؛ پس در اجتماع رکوردهای دو جدول با هم ترکیب و رکوردهای تکراری تنها یکبار ذکر میشوند.
- تفاضل دو رابطه، رابطه ای است که تاپلهایش در رابطه اول موجود ولی در رابطهی دوم وجود ندارد.
- روابط ورودی برای عملگر ∪ و ∩ و – باید همتا شوند.
- عملگرهای اجتماع و اشتراک خاصیت جابجایی دارند ولی تفاضل این خاصیت را ندارد.
- عملگرهای اجتماع و اشتراک خاصیت شرکت پذیری دارند ولی تفاضل این خاصیت را ندارند.
عملگرهای پیوند یا الحاق در پایگاه داده
- این عملگرها پر کاربرد و قدرتمند هستند ولی گاهی اوقات باعث مصرف فضا و زمان زیادی میگردند لذا هنگام استفاده از آنها باید دقت کافی کرد.
- این عملگر ها عبارتند از ضرب دکارتی، پیوند طبیعی، نیم پیوند، پیوند شرطی و فراپیوند.
ضرب دکارتی در پایگاه داده
- ضرب دکارتی از گرانترین عملگرهای بانک رابطهای است که زمان و فضای زیادی میخواهد.
- حاصلضرب دو رابطه، رابطهای است که تاپلهایش از الصاق هر یک از دو تاپل دو رابطه بدست میآیند.
پیوند طبیعی در پایگاه داده
- این عملگر دو رابطه را بر مبانی یک یا چند فیلد مشترک به هم پیوند میدهد و رکوردهایی از دو جدول را که مقدار آن فیلد مشترک برای آنها یکسان است به هم میچسباند.
- پیوند طبیعی فقط سطرهایی از دو جدول را کنار هم میدهد که همه ستونهای همنام آن دو جدول مقادیر مساوی دارا شوند.
- نکته: ستونهای هم نام فقط یکبار در خروجی ظاهر میشوند.
- پیوند طبیعی عملگر گرانی نیست و زمان و فضای کمتری نسبت به ضرب دکارتی میگیرد.
عملگر جایگزینی در پایگاه داده
- با علامت ← جدول حاصل از دستورات ذخیره میشود تا در ادامه کار مورد استفاده قرار گیرد.
- در صورت طولانی بودن دستور میتوان از جایگزینی، آن را در چند مرحله نوشت.
- در برخی اوقات نماد := و در برخی موارد دیگر از عبارت GIVING برای این منظور استفاده میشود.
عملگر پیوند شرطی (join – θ) در پایگاه داده
- این عملگر، زیر مجموعهای از ضرب دکارتی است که شرط θ روی سطرهای آن اعمال شود. ستونهای خروجی معادل ستونهای ضرب دکارتی است.
- اگر شرط θ به صورت = بیان شود آنگاه پیوند شرطی به پیوند طبیعی تبدیل میگردد.
- پیوند طبیعی با پیوند شرطی در برخی موارد مشابه هستند.
تفاوت پیوند طبیعی با پیوند شرطی در پایگاه داده
- خود به خود شرط تساوی روی همه ستونهای همنام دو جدول اعمال میشود.
- ستونهای تکراری فقط یک بار در خروجی ظاهر می شوند.
- نرمافزارهایی مانند sql هیچگاه جدول ترکیبی تشکیل نمی دهند تا سطرهای همتراز را جدا کنند.
عملگر نیم پیوند در پایگاه داده
- این عملگر مشابه پیوند طبیعی است با این تفاوت که فقط ستونهای جدول را میدهد.
- نماد این عملگر ∝ و یا SEMIJOIN است.
- ممکن است تعداد سطرهای خروجی به مراتب کمتر از پیوند طبیعی است، زیرا با کنار رفتن چند ستون، سطرهای تکراری پدید میآیند و حذف میشوند.
- برخلاف سایر عملگرها ترتیب جداول ورودی در نیم پیوند بسیار مهم است.
- کاربرد اصلی عملگر نیم پیوند در بانکهای نامتمرکز است.
عملگرهای فراپیوند در پایگاه داده
- عملگرهای فرا پیوند معمولا دارای شرط تساوی است.
- انواع عملگرهای فرا پیوند:
- فراپیوند چپ.
- فراپیوند راست.
- فراپیوند کامل.
- فراپیوند چپ گونهای از عملگر پیوند طبیعی است. با این تفاوت که علاوه بر تاپلهای پیوند شدنی از دو رابطه، تاپلهای پیوند نشدنی از رابطه چپ هم، پیوند شده با مقادیر NULL وارد میشوند.
- در فراپیوند راست، تاپلهای پیوند نشدنی از رابطه سمت راستی، پیوند شده با مقادیر NULL، در جواب وارد میشوند.
- فراپیوند کامل هر دو حالت راست و چپ را شامل میشود.
عملگر تغییر نام یا نامگذاری در پایگاه داده
- بدون ذخیره سازی مجدد یک جدول میتوان از آن دو بار استفاده کرد، در واقع اشارهگر جدیدی میشود.
- محدوده عملکرد آن تنها در همان دستور مربوطه است، پس از اتمام آن دستور، نام جدید دیگر وجود ندارد. گاهی یک پرس و جو، دو یا چند بار به یک جدول نیاز دارد.
عملگر تقسیم در پایگاه داده
- تقسیم کاربرد بسیار ارزشمندی دارد ولی متاسفانه در زبانهای متداول بانک اطلاعاتی مستقیما پیاده سازی نشده است و به سختی میتوان آن را معادل سازی کرد.
- کاربرد عملگر تقسیم زمانی است که بخواهیم همه حالتهای یک اتفاق را بررسی کنیم.
آموزش عملگرها در پایگاه داده (نسخه ویدیویی)
برای یادگیری مباحث بیشتر پایگاه داده کتاب پایگاه دادهی پیشرفته را بخوانید. اگر سوالی در ارتباط با مسائل مربوط به پایگاه داده دارید در بخش نظرات این نوشته برای ما بنویسید.
برای امتیاز به این نوشته کلیک کنید!
[کل: 8 میانگین: 3.4]
دمتون گرم ترکوندید.
خیلی کامل و جامع بود.
سپاس از نگاهتون
مرسی موفق باشید
متشکرم
mamnon kheili khob bood
سپاس از اینکه نظرتون رو برای ما ثبت کردین
nice 👍🏻❤️
موفق باشید
مرسی مفید بود
موفق باشید
فوقالعاده بود! دمتون گرم
سپاس از اینکه نظرتون رو برای ما ثبت کردین