|
לצורך ההסבר ניקח עולם המכיל שתי טבלאות fact table: fact a fact b וכן טבלת מימד משותף: dim מן הסתם, היחס בין dim לfact a הוא יחס של אחד לרבים וכמובן זה גם היחס בין dim לfact b. לכן, אם נשים בשאילתת SQL סטנדרטית את שלושת הטבלאות: נקבל הכפלת רשומות. (נקרא Chasm trap).הפתרון הוא יצירת context לכל join : 1. dim.field=fact_a.field 2.dim.field=fact_b.field כאשר join_by_sql=no , דבר שהיה ברירת המחדל בגרסאות הישנות,, נוצרים שני sql שונים ולאחר החזרת הנתונים הBO מאחד אותם לכדי תוצאה אחת בדיוק כמו יצירת שני data provides וחיבורם. כאשר join_by_sql=yes נוצרת שאילתא מאחדת בתוך הDB ולא ברמת הקליינט. לדוגמא: יש כאלה הטוענים שפרמטר זה שיפר ביצועים. יש כאלה הטוענים בדיוק ההיפך. בכל מקרה שווה לנסות. |