היררכית עובדים

12reut12

New member
היררכית עובדים

אשמח לפתרון לשאלה הבאה:
ישנה טבלה עם 3 עמודות: ת"ז, שם עובד, שם בוס.
אם יוסי הוא הבוס של דניאל, ודניאל הוא הבוס של יגאל, אני צריכה שאילתא שתתן לי את השרשרת: יוסי-דניאל-יגאל.

תודה רבה לעוזרים.
 

12reut12

New member
בעקרון נשאלתי את השאלה הזו בראיון

והצלחתי להגיע רק לחלק מהפתרון:

select name, supervisor from emp where name in
(select super from emp);

יש לך רעיון מה הפתרון המלא? לאיזה כיוון המראיין חתר?

תודה
 

גרי רשף

New member
כיוון כללי

בטבלאות העוללות היררכיה, למשל- היררכית עובדים כמו בדוגמה שלך או עצי מוצר בהם כל פריט מקושר לרכיבים שלו ועוד;
יש ליצור Join בין הטבלה לעצמה לפי בוס (בטבלה 1) שווה לעובד (בטבלה 2).
יגאל הוא העובד בטבלה 1
דניאל הוא הבוס בטבלה 1 וגם העובד בטבלה 2
יגאל הוא הבוס בטבלה 2.
בשביל היררכיות נוספות יש לעבוד עם רקורסיות וזה כבר סיפור אחר.
 
למעלה