عملیات پروجکشن (Projection) در جبر رابطهای
عملیات پروجکشن که با نماد π (پای) نمایش داده میشود، یکی دیگر از عملیات اساسی در جبر رابطهای است. این عملیات برای انتخاب و نمایش ستونهای خاص (یا صفات خاص) از یک جدول (رابطه) به کار میرود. پروجکشن به ما این امکان را میدهد که فقط اطلاعات مورد نظر از یک رابطه را به دست آوریم و بقیه ستونها را حذف کنیم.
نحوه عملکرد عملیات پروجکشن
فرمول کلی عملیات پروجکشن به صورت زیر است:
πستونها(R)
- π: نماد عملگر پروجکشن.
- ستونها: نام ستونهایی که میخواهیم در نتیجه نمایش داده شوند.
- R: جدولی که عمل پروجکشن بر روی آن انجام میشود.
نتیجه این عملیات، یک جدول جدید است که فقط شامل ستونهای مشخصشده از جدول اصلی است.
مثال
فرض کنید یک جدول به نام کارمندان با ستونهای زیر داریم:
شماره کارمند | نام | سن | شغل | حقوق |
---|---|---|---|---|
1 | علی | 25 | مهندس | 5000 |
2 | سارا | 30 | تحلیلگر | 6000 |
3 | رضا | 28 | مدیر | 7000 |
4 | مریم | 22 | طراح | 4500 |
حالا میخواهیم فقط ستونهای نام و شغل را از این جدول انتخاب کنیم. عملیات پروجکشن را میتوان به صورت زیر بیان کرد:
πنام,شغل(کارمندان)
نتیجه این عملیات به صورت زیر خواهد بود:
نام | شغل |
---|---|
علی | مهندس |
سارا | تحلیلگر |
رضا | مدیر |
مریم | طراح |
ویژگیهای عملیات پروجکشن
- حذف ستونها: پروجکشن ستونهای غیرضروری را حذف میکند و فقط ستونهای مشخصشده در نتیجه نمایش داده میشوند. این عملیات زمانی مفید است که به تمام دادهها نیاز نداریم و فقط بخشی از آنها موردنظر ما است.
- حذف ردیفهای تکراری: یکی از ویژگیهای مهم پروجکشن این است که به صورت خودکار ردیفهای تکراری را از نتیجه حذف میکند. این ویژگی باعث میشود تا نتایج یکتا (distinct) در خروجی نمایش داده شوند.
- به عنوان مثال، اگر چندین کارمند در یک شرکت شغل یکسانی داشته باشند، عملیات پروجکشن فقط یک بار آن شغل را نمایش میدهد.
- بدون تغییر در ترتیب: پروجکشن ترتیب ردیفها را تغییر نمیدهد و ترتیب آنها همانند جدول اصلی حفظ میشود. با این حال، ترتیب ستونها در نتیجه بر اساس ستونهایی که در عملیات مشخص شدهاند تنظیم میشود.
مثال با حذف ردیفهای تکراری
فرض کنید که جدول زیر را داریم:
نام | شهر |
---|---|
علی | تهران |
سارا | مشهد |
رضا | تهران |
مریم | اصفهان |
سارا | مشهد |
اگر عملیات پروجکشن زیر را انجام دهیم تا فقط ستون شهر را انتخاب کنیم:
πشهر(کارمندان)
نتیجه به این صورت خواهد بود:
شهر |
---|
تهران |
مشهد |
اصفهان |
همانطور که میبینید، مقادیر تکراری شهر تهران و مشهد فقط یک بار در نتیجه ظاهر شدهاند.
کاربردهای عملیات پروجکشن
- انتخاب ستونهای موردنیاز: این عملیات برای انتخاب بخشهایی از داده که فقط به ستونهای خاصی نیاز داریم، بسیار مفید است. به عنوان مثال، میتوانیم فقط ستونهای نام و حقوق کارکنان را از یک جدول بزرگتر انتخاب کنیم.
- حذف دادههای اضافی: با استفاده از پروجکشن، میتوان دادههایی را که برای تحلیل یا پردازش نیاز نیستند حذف کرد و فقط اطلاعات مرتبط را نگه داشت.
- کاهش حجم دادهها: با انتخاب تعداد محدودی از ستونها، حجم دادهها در حافظه کاهش پیدا میکند و پردازشهای بعدی روی دادهها بهینهتر انجام میشود.
نتیجهگیری
عملیات پروجکشن π یکی از ابزارهای مهم در جبر رابطهای است که برای استخراج ستونهای موردنیاز از یک جدول و حذف ستونهای غیرضروری استفاده میشود. این عملیات به کاربران پایگاه داده کمک میکند تا فقط اطلاعات مورد نظر خود را به دست آورند و حجم دادهها را کاهش دهند. درک پروجکشن به ویژه در زبانهای پرسوجو مانند SQL ضروری است، زیرا اساس انتخاب ستونها در بسیاری از پرسوجوها است.