SQL חיבור של DATETIME - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

SQL חיבור של DATETIME


harap

Recommended Posts

אני רוצה להוציא פלט של כמה שעות טיסה לפי מספר מטוס. ז"א יש לי רשימת טיסות ע"פ תאריכים ואני רוצה להוציא פלט למשתמש כמה שעות טיסה צבר כל מטוס.

צריך להשתמש ב - SUM על משך כל טיסה ולעשות GROUP BY לפי מספר מטוס.

רק שזה לא מצליח.

קישור לתוכן
שתף באתרים אחרים

זה תלוי בסוג מסד הנתונים שהוא עובד איתו. ב mssql מהמעט שראיתי עכשיו בתוצאות חיפוש זה יכול להיות שיעבוד, אבל עם MySQL זה לא. ב MySQL צריך להשתמש ב timestampdiff

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

קישור לתוכן
שתף באתרים אחרים

אני עובד עם מסד מקומי של vs2010. סיומת sdf. מבנה הטבלה(טיסות) מספר מטוס, תאריך וזמן המראה ונחיתה, משך טיסה.

אני רוצה לחשב זמן טיסה כולל לפי מספר מטוס.

עזרה בבקשה.

קישור לתוכן
שתף באתרים אחרים

איזה שאילתא ניסית להריץ ומה התוצאה שקיבלת?

אם יש לך עמודה למשך הטיסה אז מה בדיוק הבעיה? זה באמת sum פשוט

תקרא איך עובדים עם הפונקציה sum

https://technet.microsoft.com/en-us/library/ms174058(v=sql.110).aspx

ואיך עובדים עם group by https://technet.microsoft.com/en-us/library/ms173245%28v=sql.110%29.aspx

זה לא אמור להיות מסובך מידי

קישור לתוכן
שתף באתרים אחרים

SELECT Tail, CONVERT(nvarchar(8), DATEADD(second, SUM(DATEPART(hh, CONVERT(datetime, duration, 1)) * 3600 + DATEPART(mi, CONVERT(datetime, duration, 1)) * 60 + DATEPART(ss, CONVERT(datetime, duration, 1))), 0), 108) AS Expr1FROM  flights
GROUP BY Tail

זאת השאילתא שרשמתי...היא עובדת טוב עד סכום של 24:00. מעבר לזה מתחיל שוב את הסכימה. אם לדוגמא משך זמן הטיסות הוא 26:30 אז יראה לי 2:30. למישהו הפתרונים?

קישור לתוכן
שתף באתרים אחרים

Duration אצלך הוא גם datetime?

ובכן תחשוב על זה רגע, אם השעה עכשיו 20:30 ואתה מוסיף עוד 5 שעות, מה השעה? רמז זה לא 25:30

או שתעשה את החישוב על פי תאריך וזמן המראה/נחיתה על ידי datediff כמו שהוצע לך ואז לחשב סכום של זה, או שתשמור את משך הטיסה כמספר בשעות או דקות (איך שנוח לך) ואז תוכל לחבר את משך הטיסה.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...