הצטרפו לקבוצות שלנו לקבלת עדכונים מרוכזים פעם בשבוע:

ווטסאפ:
http://wa.dwh.co.il
טלגרם:
http://telegram.dwh.co.il

כפי שהוזכר בסעיף "יצירת joins" , יש לנו את האפשרות להגדיר shortcut join. המשמעות של join זה הוא "בצע את הjoin רק כאשר יש קשר ישיר בין הטבלאות.

ניקח את המקרה הבא כדוגמא:

01021-01

ברור שיש במקרה זה loop כי הרי ניתן להגיע מכל טבלה לכל טבלה דרך יותר מדרך אחת. לדוגמא, מA לC ניתן להגיע:

A->C

או

A->B->C

אם נגדיר את אחד הJoins כShortcut join, לדוגמא  B—C, נקבל את הסכמה הבאה:

01021-02

כעת, נקבל את התוצאה הבאה:

אם נשתמש באובייקטים מA ומC, הBO יעבור בA->C

אם נשתמש באובייקטים מA ומB, הBO יעבור בA->B

אם נשתמש באובייקטים מC ומB, הBO יעבור בC->B

אם נשתמש באובייקטים מA,B,C, הBO יעבור בB->A->C

המסקנה, בכל מצב , יש דרך אחת שבה הBO יעבור. או במילים אחרות אין LOOP.