עוד שאלונת - SQL !

gfxisrael

New member
עוד שאלונת - SQL !

יש לי טבלה שנקראת PATHS ונראית ככה:
station distance station1 00 station2 45 station3 65 station4 45 station5 56​
אני רוצה לשלוף את סכום המרחקים (distance) שבין station2 ל station5, לצורך העיניין. כלומר station3 + station4 + station5 (המרחקים). בבקשה שימו לב - station אינו מפתח ! תחנה יכולה לחזור על עצמה בהמשך הטבלה. אבל אותי מעניין רק המרחק שמופיע בפעם הראשונה. תודה מראש !
 

gfxisrael

New member
*

* לצורך העיניין אנחנו לא יודעים איפה בטבלה ממוקמות התחנות, יכול להיות ש station5 נמצאת מעל station2.
 

rchokler

New member
לא הבנתי 100% את שאלתך

האם נתוני הטבלא מסודרים בקבוצות 1-5 למשל פעם ככה 1,5,4,3,2 ופעם 1,5,2,3,4 וכו'ו וכו' או יש לך מצבים של 1,1,2,3,4,5 1,1,1,1,1 בכל אופן אם תמיד יש לך קבוצות של כל החמישה אז תעשה Select top 5 תקבל קבוצה ראשונה ותחבר את שלושת התחנות שלך.
 

HaRmosh

New member
אם הבנתי נכון,

גם אם המרחק מופיע פעם נוספת, הוא זהה לערך שהופיע בפעם הקודמת ? אם כן יש לך כפילות שנראית מיותרת, לפחות לפי מה שהצגת - אבל אני מניח שזה לא פשוט כמו שזה נראה. בכל אופן, אני הייתי הולך על משהו כמו:
SELECT SUM(distance) FROM ( SELECT DISTINCT distance FROM tableName WHERE .... )​
כך תקבל כל מרחק רק פעם אחת. מקווה שהבנתי נכון.
 

HaRmosh

New member
יצאתי מעפן

לא התייחסתי להפרש בין התחנות... לצערי לא כזה פשוט, אולי כדאי שתהיה איזו עמודה של מס' סידורי של תחנה שתוכל להעזר בה...
 
למעלה