pupil pupilname address class subject subjectname class teacher
: • נשתמש ביחסים הבאים • pupil (pupil_name, address, class) • subject (subject_name, class, teacher) • grades (pupil_name, subject_name, task_no, grade) • tasks (subject_name, task_no) ' • מצא את כל המקצועות שלומדת כיתה ד • subject_name ( class = ‘fourth’ (subject)) 1
• pupil (pupil_name, address, class) • subject (subject_name, class, teacher) • grades (pupil_name, subject_name, task_no, grade) • מצא את המורים המלמדים ביולוגיה ולא מלמדים היסטוריה • teacher ( subject_name = 'biology' (subject)) teacher ( subject_name = 'history' subject)) 3
• pupil (pupil_name, address, class) • subject (subject_name, class, teacher) • grades (pupil_name, subject_name, task_no, grade) • tasks (subject_name, task_no) • מצא את שמות התלמידים הלומדים אצל המורה ענת • pupil_name ( pupil. class = subject. class teacher = ‘anat’ (pupil subject)) : • אפשרות נוספת • pupil_name ( teacher = ‘anat’ (pupil subject)) 4
• pupil (pupil_name, address, class) • subject (subject_name, class, teacher) • grades (pupil_name, subject_name, task_no, grade) • tasks (subject_name, task_no) • מצא שמות התלמידים שנכשלו במטלה כלשהי בהיסטוריה • pupil_name ( subject_name = 'history' grade < 60 (grades)) 5
• מצא את המורים המלמדים לפחות שני מקצועות שונים באותה הכיתה • teacher ( subject name 1 subject_name 2 ( s 1(subject_name 1, class, teacher)(subject) ⋈ ⋈ s 2(subject_name 2, class, teacher)(subject)) teacher - ו class הצירוף הטבעי מתבצע על העמודות 7
• מצא את המורים המלמדים לפחות שלושה מקצועות שונים • teacher ( subject_name 1 subject_name 2 subject_name 3 subject_name 1 subject_name 3 ( s 1(subject_name 1, class 1, teacher)(subject) ⋈ ⋈ s 2(subject_name 2, class 2, teacher)(subject) ⋈ ⋈ s 3(subject_name 3, class 3, teacher)(subject))) בלבד teacher הצירוף הטבעי מתבצע על העמודה 8
- Slides: 8