עץ וצאצאים ב- MySql
היי,
אמנם אני לא חדש בעבודה מול mySQL אבל הידע שלי הוא לא ממש נרחב.
יש לי טבלה שמכילה למעשה עץ.
בטבלה יש שלוש עמודות.
ID, title, parentID
הנתונים מופיעים כך:
1, ירושלים, 0
2, תל-אביב, 0
3, גבעת-שאול, 1
4, תלפיות, 1
5, כנפי נשרים, 3
מצאתי דרך שברגע שאני אבחר ID מסוים הוא יחזיר לי את כל הרשומות
עד ה-ROOT.
במקרה הזה הרשומות שהוחזרו הן:
5, כנפי נשרים, 3
3, גבעת-שאול, 1
1, ירושלים, 0
שאלות:
1. מה המשמעות של התו @, אף פעם לא השתמשתי בזה?
קראתי קצת וראיתי שזה נועד למנוע החזרת שגיאה, האם נכון הדבר? וכיצד נכון יהיה לרשום את השאילתה ללא התו?
2. אם אני רוצה לאחזר לפי רשימה של ID's ז"א את ההורים של ID מספר 5 ואת ההורים של ID מספר 48 וכו'... כיצד יהיה נכון לכתוב את הבקשה?
המון תודה על הסיוע וההכוונה...
היי,
אמנם אני לא חדש בעבודה מול mySQL אבל הידע שלי הוא לא ממש נרחב.
יש לי טבלה שמכילה למעשה עץ.
בטבלה יש שלוש עמודות.
ID, title, parentID
הנתונים מופיעים כך:
1, ירושלים, 0
2, תל-אביב, 0
3, גבעת-שאול, 1
4, תלפיות, 1
5, כנפי נשרים, 3
מצאתי דרך שברגע שאני אבחר ID מסוים הוא יחזיר לי את כל הרשומות
עד ה-ROOT.
קוד:
select t.id as id, title, @pv:=t.parentID as parentID from (select * from groups order by id desc) t join
(select @pv:=5)tmp where t.id=@pv;
5, כנפי נשרים, 3
3, גבעת-שאול, 1
1, ירושלים, 0
שאלות:
1. מה המשמעות של התו @, אף פעם לא השתמשתי בזה?
קראתי קצת וראיתי שזה נועד למנוע החזרת שגיאה, האם נכון הדבר? וכיצד נכון יהיה לרשום את השאילתה ללא התו?
2. אם אני רוצה לאחזר לפי רשימה של ID's ז"א את ההורים של ID מספר 5 ואת ההורים של ID מספר 48 וכו'... כיצד יהיה נכון לכתוב את הבקשה?
המון תודה על הסיוע וההכוונה...