Group By Date

neatsun

New member
Group By Date

האם ניתן לבצע פעולות כמו Sum ו Count כאשר החלוקה לקבוצות תהיה על פי פרק זמן מסוים למשל "שבוע","חודש" (בכל רשומה יש שדה מסוג DateTime ). חודש זה אולי דוגמה קלה כי ניתן לעשות Group By על החודש בלבד מתוך נתון התאריך, אבל מה הדרך היעילה לטפל בשבוע . תודה רבה. (MS SQL SERVR 7 )
 

elileiba

New member
פונקציה לטיפול בחלקי תאריך

תקרא על datepart היא מקבלת קוד של חלק הזמן ואת התאריך ויודעת להציג בהתאם יש פורמט לשבוע ww נדמה לי בהצלחה
 

neatsun

New member
תודה, והמשך השאלה ...

אכן, בינתיים כבר מצאתי וניסיתי את datepart וזה עובד טוב. הבעיה שבמקרה הזה יש צורך לטפל בפרק זמן לא סטנדרטי, כלומר - השבוע אצל הלקוח של המערכת מתחיל (ומסתיים) ביום שבת בשעה 19:00, כך שגם set startdate לא ממש עוזר. אני צריכה להחיל חישוב ספציפי של תחום תאריך. האם שימוש ב stored procedure אפשרי במקרה זה, והאם זו הדרך היעילה ביותר. תודה רבה על עזרתך.
 

elileiba

New member
פתרון שיבוד רק ב sql 2000

יש ב 2000 אפשרות לעשות udf user defined function במקרה שלך זו פונקציה סקרלית שתחזיר את מספר השבוע לפי החוקיות שלך על זה תעשה את ה group by
 

גרי רשף

New member
כיצד בכל זאת ניתן..

נניח שלשדה התאריך קוראים Taarih, המקרה זה ביטוי הבא: Int(Taarih/7) 1 צריך לתת אותו ערך לכל ימי אותו השבוע (התעלם מהספרה 1 שנועדה לסדר את התצוגה). אם רוצים להזיז את תחילת השבוע יום קדימה או יום אחורה אזי: Int((Taarih+1)/7) 1 או Int((Taarih-1)/7) 1 בהצלחה!
 
למעלה