رابطه جبری
)Relational Algebra (RA
غملٍهد جبر رابطي اي فكط رابطي اصت
غملگرًاي جبر رابطي اي
غملگر ًاي صادى
غملگر ًاي مجمٍغي اي
غملگر ًاي پيٍهد
صاير غملگرًا
غملگر ًاي صادى :
غملگر ًاي مجمٍغي اي :
غملگر پیٍهد :
صایر غملگرًا :
اهٍاع غملگر ًا
عملگر گسينش ) Selectبا عالمت (σ
)هام جدول ( σ θ اهتخاب صطر
ورودي :يم رابطي
خروجي : يم رابطي
صتٍن ًاي خروجي برابر با تمام صتٍن ًاي ورودي
صطر ًاي خروجي برابر با ان صطر ًاي ي از ورودی هي داراي ظرط ذهر ظدى باظود
عملگر پرتو ) Projectبا عالمت (Π
)ورودي جدول هام( Πcol اهتخاب صتٍن
ورودي : يم رابطي
خروجي : يم رابطي
صتٍن ًاي خروجي : فكط ان صتٍهٌاي ي از جدول ورودي اصت هي در دصتٍر ذهر ظدى اصت
صطر ًاي خروجي : ظامو تمام صطر ًاي ورودي اصت
هن تي : اين غملگر روي صطر ظرط اغمال همي هود
غملگرًاي مجمٍغي اي
ورودي : دو رابطي
خروجي : يم رابطي
تٍجي : دو رابطي بايد ًمتا باظود يػوي : تػداد صتٍهٌا برابروهٍع صتٍهٌا هظير بي هظير ينشان باظود
صتٍهٌاي خروجي ًمتا با صتٍن ًاي ورودي
صطر ًاي خروجي برابر با اجتماع / اظتراك / تفاضو صطر ًاي ورودي
غملگرًاي پيٍهد
عملگر ضرب دکارتی) Cartesian Productبا عالمت : (Χ
ترهيب جداول
ورودي :دو رابطي
خروجي :يم رابطي
صتٍن ًاي خروجي برابر با مجمٍع ًمي صتٍن ًاي دو رابطي
صطر ًاي خروجي برابر با ًمي ترهيبات ممنن دو جدول مي باظد
مثال : هام داهطندى اي هي درس ظبيي صازي در ان ارائي مي ظٍد ؟
مثال : اصامي اصتاداهي هي در داهطندى هامپيٍتر تدريس مي هوود؟
مثال : اصامي اصتاداهي هي در داهطندى هامپيٍتر تدريس مي هوود؟
غملگر پيٍهد ظرطي
ماهود ضرب دهارتي غمو مي هود با اين تفاوت هي ظرط θرا هيز روي صطر ًا اغمال مي هود
ورودي :دو رابطي ) A Xθ B = σ θ ( A X B
خروجي : يم رابطي
مثال : ظمارى درس وهام درس وهام داهطندى ارائي دًودى دروس چٌار واخدي؟
مثال : ظمارى و هام داهطجٍيان بي ًمراى ظمارى و هام داهطندى مدو تدصيو ان ًا؟
مثال : اصامي داهطجٍياهي هي در درس مدار موطكي ثبت هام هردى اهد ؟
عملگر پيوند طبيعي با عالمت ∞
ماهود غملگر پيٍهد ظرط اغمال مي هود با اين تفاوت هي ظرط بي صٍرت اتٍماتيم و خٍد بي خٍد اغمال
مي ظٍد. اين غملگر روي ًمي صتٍهٌاي ًموام ظرط تشاوي را اغالم مي هود.
صتٍن ًموام فكط يم بار در خروجي مي ايد.
مثال : اصامي دروصي هي در داهطندى هامپيٍتر ارائي مي ظٍهد؟
مثال : هام داهطندى داهطجٍئي بوام مدمدي؟
مثال : اصامي دروصي هي داهطجٍئي بوام مدمدي در ترم 148برداظتي اصت؟
غملگرهيم پيٍهد با غالمت ∝ ()Semi Join
ورودي : دو رابطي
خروجي : يم رابطي
در خروجي فكط صتٍن ًاي جدول اول مي ايد.
بيطترين هاربرد در باهم اطالغات هامتمرهز
مثال : ظمارى و هام داهطجٍياهي هي در داهطندى هامپيٍتر درس مي خٍاهود؟
مثال : اصامي داهطجٍياهي هي در هيمشال 148 با رئيس داهطندى خٍد درس دارهد؟
ديگر دصتي غملگر ًا
غملگر جايگزيوي :) ←(
خاصو غبارت صمت راصت را در رابطي صمت چپ لرار مي دًد.
A←B
مثال : فرض ايوني جدولي بوام good studبا ًمان صاختاروجٍد دارد، مطخصات داهطجٍيان مػدل
الف را در studجدول ان لرار دًيد؟
غملگر هامگذاري )(ρ
مثال : اصامي اصتاداهي هي ًم اتاق دارهد؟
غملگر تكشيم )÷(
ورودي : دو رابطي
خروجي : يم رابطي
پيض ظرط : جدول اول بايد ظامو تمام صتٍن ًاي جدول دوم باظد.
صتٍن ًاي خروجي : تمام صتٍهٌاي غير مطترك جدول مي باظد.
صطر ًاي خروجي : ابتدا جدول براصاس صتٍن ًاي غيرمطترك بي گروًٌائي تكشيم مي ظٍد وان
گروًي درخروجي مي ايد هي مكادير صتٍن ًاي مطترك ان ظامو مكادير جدول دوم باظد.
گروى بودي بر اصاس صفت x
جدا هردن صطر ًا بي دصتي ًاي ي هي در ًر دصتي صفت xمكدار ينشاهي دارد.
اين غملگر رخ داد ًمي مٍارد جدول دوم را در گروى ًاي ي ازجدول اول بررصي مي هود.
مثال : ظمارى داهطجٍياهي هي درًمي درس ًاي اصتاد مير ظمشي ثبت هام هردى اهد ؟
مثال : ظمارى داهطجٍياهي هي در ترم 148در ًمي درس ًاي ي هي اصتاد مير ظمشي در ترم 148ارائي هردى اصت
ثبت هام هردى اهد ؟
نياز هاي DB
اصتخراج : (در اصاليد ًاي لبلي تٍضيح دادى ظد)
وارد هردن يا اضافي هردن
خذف هردن
بي روز در اوردن
اضافي هردن صطر بي جدول
هياز بي غملگر جديد هداريم .
با غملگرًاي اجتماع و جايگزيوي اين هار اهجام مي گيرد .
وارد هردن اطالغات بي دو ظنو :
الف ) وارد هردن يم صطر بي جدول
ب ) وارد هردن چود صطر از جدول ديگر
مثال : داهطجٍئي بوام ” صمدي “ بي ظمارى داهطجٍئي ” 53372458 “و متٍلد ” تٌران“و با مػدل هو ” 04.31 ” هي در
داهطندى ظمارى 01 تدصيو مي هود را بي جدول studاضافي هويد .
اضافي هردن چود صطر
مثال : فرض هويد جدولي بوام good studبا ًمان صاختار studوجٍد دارد هي داهطجٍيان مػدل الف
داهطندى ًاي 01 و 51 در ان وجٍد دارهد . داهطجٍيان مػدل الف داهطندى ظمارى 5 را بي ان اضافي هويد؟
خذف هردن صطر از جدول
هياز بي غملگر جديد هداريم .
با غملگرًاي تفاضو و جايگزيوي اين هار اهجام مي گيرد .
مثال : داهطجٍياهي هي مػدل زير 01 دارهد را از جدول studخذف هويد .
بي روز در اوردن
فكط بخطي از صطر تغيير مي يابد .
مثال: تغيير هام باختران بي هرماهطاى را در جدول clgاهجام دًيد
مثال : يم همرى براي ًمي داهطجٍيان اضافي هويد؟
بٌيوي صازي پرس و جٍ
مثال : مطخصات دروس 4 واخدي هي در ترم 148 ارائي ظدى اصت؟
لٍاغد بٌيوي صازي
اصتفادى همتر از غملگرًاي پر ًزيوي جايگزيوي با غملگر ًاي هم ًزيوي
غملگر σلبو از ًمي غملگر ًا بيايد.
ظرط ترهيبي را بي متٍالي تبديو هرد .
بػد از σبا اضافي هردن Πصتٍن اضافي را خذف هرد.
مداصبات داموي ای رابطي ای DRC
Domain Relational calculus
مداصبات داموي اي رابطي اي ( ادامي ... )
ذهر هنات زير ضروري اصت :
خروجي ظامو صطري اصت هي از ترهيب متغيير ًاي c1,c2,…,cnبدصت مي ايد.
براي ارتباط متغيير ًا با جداول بايد از غالمت ∈ اصتفادى ظٍد و ظرط ًمتاي ي مػوي متغيير ًا را
تػيين مي هود .
ترهيب ظرط ًا با غملگر ًاي موطكي AND,OR,NOTامنان پذير اصت .
اصتفادى از ثابتًا بالماهع اصت بي ظرطي هي جزو داموي متغيير ًا باظد .
غالوى بر متغيير ًاي خروجي اصتفادى از صاير متغيير ًا در ظرط بالماهع اصت بي ظرطي هي با يني از
∃ غاليم ويا ∀ تػريف ظدى باظود.
پيٍهد جداول با اصتفادى از متغيير ًاي ًموام صٍرت مي گيرد .
مثال : مطخصات داهطجٍياهي هي مػدل الف دارهد؟
مثال : ظمارى و هام داهطجٍياهي هي مػدل الف دارهد يا متٍلد زاًدان ًشتود؟
مثال : ظمارى و هام دروس چٌار واخدي؟
مثال : هام داهطندى اي هي رئيس ان جاًد مطلق اصت؟
مثال : اصامي داهطندى ًاي ي هي ًمي داهطجٍيان ان مػدل الف دارهد؟
خطر خلكي ًاي بي پايان
.1 خروجي بي هٌايت
.2 ظرط بي هٌايت
پرش و جو با مثال
QBE: Query By Example
مػواي مختلف : p
متغير با غالمت P
ثابت با غالمت “”P
دصتٍر با غالمت .P
مثال : مطخصات داهطجٍياهي هي متٍلد مراغي ًشتود و مػدل الف دارهد؟
مثال : ظمارى و هام داهطجٍياهي هي مػدل اهٌا بزرگ تر مشاوي 41 و هٍچن تر از 71 اصت؟
مثال : ظمارى و هام داهطجٍياهي هي مػدل ا لف دارهد يا مطروط ًشتود؟
اهٍاع جدول در QBE
جدول اصلي
جدول ظرط
جدول خروجي
مثال : ظمارى و هام و مػدل و ظمارى داهطندى ,داهطجٍياهي هي مػدل الف دارهد و متٍلد مياهي ًشتود؟
مثال : ظمارى و هام داهطجٍياهی کي در داهطکدى کامپيٍتر تدصيو می کوود؟
مثال : ظمارى و هام داهطجٍياهي هي مػدل ا لف دارهد بي ًمراى هام داهطندى مدو تدصيو اهٌا؟
مطنو : خروجي بايد يم جدول مي ظد هي دو جدول ظدى اصت
بوابرين از Outputاصتفادى مي هويم .
مثال : داهطجٍئی بي هام امين فاطمی بي ظمارى 05376148 کي متٍلد زاًدان اصت و مػدل 41.61 و داهطکدى
ظمارى 01 را وارد جدول Studکويد؟
مثال : داهطجٍياهي هي مػدل زير 01 دارهد را خذف هويد؟
مثال : تغيير هام باختران بي هرماهطاى در جدول Stud؟
هک تي:
I,D روي هو صطراغمال مي ظٍد .
U روي يم صتٍن اغمال مي ظٍد .
مثال : در داهطجٍي لبلي وارد ظدى هام داهطجٍ را از امين فاطمي بي فاطمي اميوي تبديو هويد؟
مثال : يم همرى بي ًمي داهطجٍيان اضافي هويد؟