آخرین ارسال ها |
نوار پیام ها |
مدیریت پیام ها |
نمایش موضوع به شکل عادی | |||
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
یکشنبه ۹ تیر ۱۳۹۲ ۱۱:۲۱ بعد از ظهر
[#4]
|
||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
جبر رابطه ای
جبر رابطه ای مجموعه ای از عملگرها وقوانینی است برای پردازش رابطه ها یا جداول بکار می روند، این عملگر ها عبارتند از:
در این آموزش عملگرهای جبر رابطه ای را مورد بررسی قرار می دهیم. در اغلب مثالها از جداول یک پایگاه داده شاما جداول ذیل می باشد:
S(S#,Sname,city)
در این جدول اطلاعات تولید کنندگان ذخیره می شود:S#:کد تولید کننده(هر تولید کننده یک کد منحصر بفرد دارد) Sname:نام تولید کننده City:شهری که تولید کننده در آن قرار دارد.
P(p#,pname,color)
در این جدول اطلاعات محصولات ذخیره می شود:p# :کد محصول(هر محصول یک کد منحصر بفرد دارد) Pname:نام محصول Color: رنگ محصول
J(j#,jname,city)
در این جدول اطلاعات پروژه ها ذخیره می شود:j#:کد پروژه(هر پروژه یک کد منحصر بفرد دارد.) : jnameنام پروژه City:شهری که پروژه در آن اجرا می شود
SPJ(s#,p#,j#,qty)
در این جدول مشخص می شود هر تولید کننده چند کیلو گرم از هر محصول را برای هر پروژه تولید کرده است:s#:کد تولید کننده p#:کد محصول j#:کد پروژه qty:مقدار فروش
S
عملگرهای یکتایی
عملگر انتخاب: از این عملکر برای گزینش افقی در یک جدول استفاده می شود. به عبارت دیگر ، با استفاده از این عملگر می توان تاپلیهایی(سطر) از یک جدول را که دارای شرط بخصوصی هستند انتخاب کرد. شکل کلی دستور:
( نام جدول) Ó
شرط
جدول R را درنظر بگیرید:
مثال1:تاپلهایی از جدول R را در انتخاب کنید که در آنها D>15 است.
این دستور را می توان به یکی از صورتهای ذیل نوشت:
Ó ( R )
D>15
یا
Select R Where D>15
یا
R Where D>15
نتیجه:
در شرط انتخاب میتوان از and وor و not استفاده کرد.
مثال2: تاپلهایی از جدول R را انتخاب کنید که در D>15 آنها و C='a' است.
Ó ( R )
D>15 and C='a'
یا
Select R Where D>15 and C='a'
یا
R Where D>15 and C='a'
نتیجه:
مثال3:مشخصات تولید کنندگان تهرانی را بیابید (با توجه به پایگاه دادهای که در ابتدا شرح داده شد)
کافیست از جدول تاپلهایی را انتخاب کنیم که مربوط به شهر تهران هستند:
Ó ( S )
'تهران 'City =
یا
'تهران Select S Where City ='
یا
'تهرانS Where City ='
نتیجه:
مثال4: مشخصات فروشهای مربوط به محصولات 'P2' و'P3' و'P4' را بیابید.
Ó ( SPJ )
P#='P2' or P#='P3' or P#='P4'
یا
Select SPJ Where P#='P2' or P#='P3' or P#='P4'
یا
SPJ Where P#='P2' or P#='P3' or P#='P4'
نتیجه:
مثال5: مشخصات فروشهایی رابیابید که مربوط به محصولات 'P2' یا 'P3' یا 'P4' نیستند.
Ó ( SPJ )
P#<>'P2' and P#<>'P3' and P#<>'P4'
یا
Select SPJ Where P#<>'P2' and P#<>'P3' and P#<>'P4'
یا
SPJ Where P#<>'P2' and P#<>'P3' and P#<>'P4'
نتیجه:
عملگر پرتو:
از این عملگر برای گزینش عمودی در یک جدول استفاده می شود. به عبارت دیگر ، با استفاده از این عملگر می توان ستونهای نورد نظر از یک جدول را انتخاب کرد. مثال1: ستونهای A و D از جدول Rرا انتخاب کنید. این دستور را می توان به یکی از صورتهای ذیل نوشت:
( R ) ∏
A, B
یا:
R[A,B]
یا:
Project R over A,B
نتیجه:
مثال 2: نام کلیه ی شهرهایی را بیابید که تولید کننده ای در آنها ساکن است.
کافیست ستون از جدولS را انتخاب کنیم:
(S ) ∏
city
یا:
R[city]
یا:
Project S over city
نتیجه:
عملگر بسط : از عملگر بسط برای اضافه کردن یک یا جند ستون به یک جدول استفاده می شود. مقادیر این ستونها بر اساس مقادیر ستونهای دیگر محاسبه می شود. قالب کلی از این عملگر به شکل ذیل است:
نام ستون جدید as(عبارت محاسباتی) add نام جدول extend
مثال: لیستی از کلیه ی ستونهای جدول و یک ستون جدید تهیه کنید که میزان فروش بر حسب تن را نشان دهد ( qty بر حسب کیلو گرم است)
extend SPJ add (qty/1000) as tonQty
نتیجه:
عملگر خلاصه سازی یا گروهبندی
با استفاده از این عملگر می توان تاپلهای یک جدول را برا ساس مقادیر یک ا چند ستون گروهبندی کرد و روی هر گروه بصورت مجزا محاسبه ای را انجام داد. از تابع sumبرای محاسبه ی مجموع ، avg از تابع برای محاسبه ی میانگین ، ازmax تابع برای محاسبه ی ماکزیمم و از تابع min برای محاسبه ی مینیمم مقادیر یک ستون از هر گروه استفاده می شود همچنین ، با استفاده از تابع count می توان تعداد تاپلهای هر گروه را محاسبه کرد. . قالب کلی از این عملگر به شکل ذیل است:
نام ستون جدید as عبارت محاسباتی add ( نام ستون،ها) dy نام جدول summarize
مثال1: لیستی از کد محصولات و مقدار کل تولید هر یک از آنها تهیه کنید.
summarize SPJ dy (P#) add sum(qty) as total
مثال 2: لیستی از کد محصولات ، کد پروژه ها و میزان کل فروش محصول مورد نظر برای پروژه ی مورد نظر تهیه کنید.
در اینجا باید میزان کل فروش را یرای هر جفت کد محصول/ کد پروژه بطور جداگانه محاسبه کنیم. پس لازم است لیست را بر اساسp# وj# گروهبندی کنیم:
summarize SPJ dy (P#,j#) add sum(qty) as total
ویرایش ارسال توسط : programmer
در تاریخ : یکشنبه ۹ تیر ۱۳۹۲ ۱۱:۲۳ بعد از ظهر |
||
|