פרק 6: אלגברה טבלאית relational algebra
DESCRIPTION
פרק 6: אלגברה טבלאית Relational Algebra. אלגברה טבלאית. שפה תיאורטית לשליפת מידע מתוך המודל הטבלאי , תוך שימוש באוסף של אופר ט ורים מהווה תשתית תיאורטית עליה מתבססות שפות טבלאיות רבות עוצמה כגון שפת SQL - PowerPoint PPT PresentationTRANSCRIPT
1
: אלגברה : אלגברה 66פרק פרק טבלאיתטבלאית
Relational AlgebraRelational Algebra
2
אלגברה טבלאיתאלגברה טבלאית
לשליפת מידע מתוך המודל שפה תיאורטית•וריםט, תוך שימוש באוסף של אופרהטבלאי
תיאורטית עליה מתבססות שפות תשתיתמהווה •SQL טבלאיות רבות עוצמה כגון שפת
פרוצדורלית לאשפה טבלאית הינה שפה • בבסיס הנתונים מרשומה מנווטתשאינה
לרשומה לצורך שליפת נתונים
3
אלגברה טבלאיתאלגברה טבלאית
3להדגמה - נשתמש בבסיס נתונים טבלאי המורכב מ- •טבלאות
4
Gradesציונים
GRADETERMSEMESTERCOURSE_IDSTUDENT_ID
מס. סטודנטמס. קורססמסטרמועדציון
78ASUM2006M-100105
85BAUT2008C-55105
95AAUT2008C-100105
75AAUT2008C-100210
82BSUM2007C-300210
70ASUM2007C-200210
90ASUM2006M-100245
80BAUT2008C-55245
58ASUM2007C-300245
75ASUM2006M-100310
5
- - SelectSelect בחירת שורותבחירת שורות
שליפת שורותאופרטור “בחירה” מאפשר • חדשה טבלהמסוימות מתוך טבלה ובניית
המכילה רק את השורות העונות על תנאי השליפה
6
- -SelectSelect בחירת שורותבחירת שורות
7
דוגמא: הצג את כל הסטודנטים אשר קבלו ציון M-100 בקורס 70 גבוה מ-
•SELECT GRADES WHERE GRADE >70 AND COURSE_ID=‘M-100’
GRADETERMSEMESTERCOURSE_IDSTUDENT_ID
מס. סטודנטמס. קורססמסטרמועדציון
78ASUM2006M-100105
90ASUM2006M-100245
75ASUM2006M-100310
8
((ProjectProject ) )בחירת עמודות – היטל בחירת עמודות – היטל
שליפת עמודותאופרטור ההיטל מאפשר •מסוימות מטבלה ובניית טבלה חדשה המכילה
רק את העמודות המבוקשות
בטבלת כפולות שורותאינו מאפשר קיום •התוצאה
העמודות בטבלת התוצאה נקבע ע”פ סדר סדר• הופעת שמות העמודות באופרטור
9
((ProjectProject ) )בחירת עמודות – היטל בחירת עמודות – היטל
10
דוגמא: הצג את הסמסטרים בהם נבחנו 60סטודנטים במועד א' וקבלו ציון גבוה מ-
•SELECT GRADES WHERE TERM=‘A’ AND GRADE >60 GIVING TEMP
PROJECT TEMP OVER (SEMESTER) GIVING RESULT
SEMESTER
סמסטר
SUM2006
AUT2008
11
((JoinJoin ) )צירוף טבלאות צירוף טבלאות
2 בונה טבלה חדשה מתוך הצירוףאופרטור • המשותפות אחת או יותר עמודה ע”פ טבלאות
לשתי טבלאות
בין הטבלאותהקשריםהאופרטור מנצל את •
12
( ( JoinJoin ) )צירוף טבלאותצירוף טבלאות
13
((JoinJoin ) )צירוף טבלאות צירוף טבלאות
-M דוגמא: הצג את שמות הסטודנטים שלמדו בקורס•100
14
((UnionUnion ) )איחוד טבלאות איחוד טבלאות
טבלאות ובונה מהן 2 מחבר האיחודאופרטור • מתורת האיחודטבלת תוצאה אחת ע”פ כללי
הקבוצות תופענה פעם אחת בלבדזהות שורות•” איחוד תואמות טבלאות “2פועל על •
(זהות מבחינת המבנה שלהן - אותם עמודות עם (אותם מרחבי ערכים
הופעת הטבלאות באופרטור לסדר חשיבות אין•האיחוד
15
((UnionUnion ) )איחוד טבלאות איחוד טבלאות
16
( ( UnionUnion ) )איחוד טבלאותאיחוד טבלאות
17
( ( MinusMinus ) )חיסור טבלאותחיסור טבלאות
מטבלה אחת להחסיר מאפשר החיסוראופרטור • המופיעות בטבלה הזהות השורותאת כל השנייה
רק השורות הנותרות מועברות לטבלת התוצאה•
איחוד תואמותהטבלאות חייבות להיות •
חשוב הופעת הטבלאות באופרטור - סדר•
18
((MinusMinus ) )חיסור טבלאות חיסור טבלאות
19
((MinusMinus ) )חיסור טבלאות חיסור טבלאות
20
( ( IntersectionIntersection ) )חיתוך טבלאותחיתוך טבלאות
בין שתי חיתוך מאפשר החיתוךאופרטור •טבלאות לפי כללי תורת הקבוצות
המופיעות בשתי הטבלאות גם יחד שורות רק•יועברו לטבלת התוצאה
הופעת הטבלאות באופרטורלסדר חשיבות אין•
21
( ( IntersectionIntersection ) )חיתוך טבלאותחיתוך טבלאות
22
( ( IntersectionIntersection ) )חיתוך טבלאותחיתוך טבלאות
23
((ProductProduct ) )מכפלה קרטזית מכפלה קרטזית
לכל אחת מהשורות לצרףאופרטור זה מאפשר •R2 את כל השורות של טבלה R1 של טבלה
m יש R2 שורות ולטבלה n יש R1 אם לטבלה• m x n שורות כי אז לטבלת התוצאה תהיינה
שורות
איחוד תואמות חייבות להיות לאהטבלאות •
24
( ( ProductProduct ) )מכפלה קרטזיתמכפלה קרטזית
25
((DivisionDivision ) )חילוק טבלאות חילוק טבלאות
מוצא בטבלה מסוימת החילוקאופרטור • המופיעות השורות (טבלת המונה) את כל
(טבלת המכנה) השנייה בטבלת גם לפי ערך השוואה המופיע בעמודה
מסוימת/עמודות מסוימות
איחוד תואמות להיות חיבות לאשתי הטבלאות •
לסדר חשיבות יש•
26
((DivisionDivision ) )חילוק טבלאות חילוק טבלאות
27
סיכוםסיכום
בעזרת פעולה בבסיס הנתונים ניתנת לביצוע כל•: בלבד אופרטורים בסיסיים5
•Select
•Project
•Union
•Minus
•Product
28
סיכוםסיכום
דומה Join האופרטורלדוגמא: פעולת • לשילוב בין האופרטורים
product ו Select-