שם הכותב: תאריך: 06 ינואר 2014

שיעור 13 – 05/01/14

תרגול לקראת מבחן

מבנה המבחן –

  1. שאלת שרטוט.
  2. כתיבת שאילתה על השרטוט.
  3. שאלת כתיבה – UNION.
  4. שאלת כתיבה – זוגות.
  5. שאלת כתיבה – תת שאילתה מתואמת / שיעור פדיון.

שאלה:

  • לחברת טיולים יש מגוון של טיולים לחו"ל.
  • בכל טיול ישנם הרבה מטיילים.
  • בכל טיול ישנה אפשרות למספר מדריכים.
  • כל מדריך יכול להדריך במספר טיולים.
  • לכל טיול קוד משלו.
  • למספר מצומצם ביותר של מדריכים ישנה התמחות ספציפית לדוגמה (היסטוריה, גיאוגרפיה, חובש).
  1. שרטט את מבנה מסד הנתונים ERD.
  2. יש לבצע את הפעולה הבאה – הצג את סכום הפדיון מכלל הטיולים בחודשי הקיץ / חורף השונים.

פתרון:


סיווג טבלאות:

טיולים – בסיס

טיולים ומטיילים – קשר

מטיילים – בסיס

טיולים ומדריכים – קשר

מדריכים – בסיס

התמחויות – הרחבה

מחלקות – טבלת בסיס אשר הופכת את טבלת "טיולים" לטבלת משנה

  1. יש צורך לוודא שכל השדות הנדרשים לחישוב נמצאים בטבלאות שבנינו ולבנות את השאילתה ידנית.

שאלה:

  1. לכל מטייל מה שיעור המחיר ששילם מתוך סכום הפדיון של הטיולים שמשתתף בהם.
קוד מטייל

קוד טיול

מחיר בפועל

10

1

1000

10

2

3000

10

3

2500

11

2

700

11

4

800

11

6

1900

12

6

3100

12

1

4100

13

4

3000

13

3

800

13

2

750

פתרון:

מטייל

טיול

מחיר

שיעור המחיר

שיעור מטיול

10

1

1000



10

2

3000

10

3

2500


פעולת WHERE חיה בעולם פרטני ולכן לא יהיו בו אף פעם פונקציות אלא רק בעזרת תת שאילתה. תת השאילתה תחזיר תשובה אחת אשר תקיים את הפונקציה.

דוגמה: הצג לכל טיול או מטייל את המחיר הגבוה ממוצע מחירי הטיולים. כך באמצעות תת שאילתה נמצא את ממוצע מחירי הטיולים אשר יחזור כתשובה אחת בלבד (ממוצע) אשר תוצב בפונקצית ה-WHERE.

פעולת HAVING מטפלת במצב של קבוצה.

דוגמה: האם סכום המחירים של מטייל ספציפי גבוה מממוצע מחירי הטיולים.

פעולת SELECT תציג את הממוצע ולא רק תחשב אותו.

פעולת FROM תשתמש בתת שאילתה כטבלה חדשה שתיבנה.

תת שאילתה מתואמת – מאפשרת להציג אינפורמציה על קטעים מסוימים מהטבלה, למשל רק על קוד מטייל.


  • הצג את זוגות המטיילים שהיו יחד באותו טיול באותו חודש ושגרים באותה עיר – ב-ON זה תמיד יהיה השונה בין המפתחות. ב-WHERE יהיה שווה לקריטריון ההשוואה.

האם קשר LS או RS יכול להיות לכיוון המפתח הזר? מפתח זר יכול להכיל רק נתונים משותפים עם המפתח הראשי (שגיאה בהבנה). RS ו-LS נועדו כדי להוציא את כלל הנתונים.

שייך לנושאים: אריק אדלמן, מסדי נתונים


3 × שש =

תואר ראשון
תואר שני
מרצים