محاسبه تعداد روز در بازه های زمانی
با سلام خدمت دوستان عزیز
من یک سری بازه زمانی دارم که تاریخ شروع و خاتمه اونها مشخصه میخوام جمع اون روزها را بدونم چند روزه هست
مشکل این هست که این بازه های زمانی ممکنه در یک قسمت هایی مشترک باشن تعداد این بازه های زمانی هم نا محدود هست
مثلا از تاریخ 95/02/23 تا 96/01/18 محدوده بعدی از تاریخ 95/06/11 تا 97/03/20 محدوده بعدی از تاریخ 97/09/21 تا 97/11/20
اگر محدوده ها نقطه مشترک نداشتند راحت بود ولی همونطور که ملاحظه می فرمایید هر محدوده ممکنه با محدوده های دیگه نقاط مشترک داشته باشه یا نداشته باشه
لطفا راهنمایی بفرمایید
چیزی که به ذهن خودم رسید این بود که از ماتریس استفاده کنم بطوری که کمترین تاریخ اولین خانه ماتریس و بیشترین تاریخ آخرین خانه باشه و بعد با توجه به هر محدوده خانه های ماتریس را پر کنم
و بعد تعداد خانه های پر را بشمارم ولی راه حل اجراشو نمی دونم
دوستان اگر کمک کنند و راه حلی را ارائه کنند ممنون میشم
نقل قول: محاسبه تعداد روز در بازه های زمانی
سلام. با آرایه می تونید طبق روشی که گفتید استفاده کنید.
با دیتابیس هم می تونید، یک جدول تقویم بسازید، روش سلکت بزنید که شرایطش تاریخ های بالایی باشه، و در نهایت ازش تعداد بگیرید.
select count(1) from CalendarTbl
where
(SDate between Date1 and Date2) or
(SDate between Date3 and Date4) or
(SDate between Date5 and Date6) or
(SDate between Date7 and Date8) or
(SDate between Date9 and Date10) ..
3 ضمیمه
نقل قول: محاسبه تعداد روز در بازه های زمانی
نقل قول:
نوشته شده توسط
ariobarzan
با سلام خدمت دوستان عزیز
من یک سری بازه زمانی دارم که تاریخ شروع و خاتمه اونها مشخصه میخوام جمع اون روزها را بدونم چند روزه هست
مشکل این هست که این بازه های زمانی ممکنه در یک قسمت هایی مشترک باشن تعداد این بازه های زمانی هم نا محدود هست
مثلا از تاریخ 95/02/23 تا 96/01/18 محدوده بعدی از تاریخ 95/06/11 تا 97/03/20 محدوده بعدی از تاریخ 97/09/21 تا 97/11/20
اگر محدوده ها نقطه مشترک نداشتند راحت بود ولی همونطور که ملاحظه می فرمایید هر محدوده ممکنه با محدوده های دیگه نقاط مشترک داشته باشه یا نداشته باشه
لطفا راهنمایی بفرمایید
چیزی که به ذهن خودم رسید این بود که از ماتریس استفاده کنم بطوری که کمترین تاریخ اولین خانه ماتریس و بیشترین تاریخ آخرین خانه باشه و بعد با توجه به هر محدوده خانه های ماتریس را پر کنم
و بعد تعداد خانه های پر را بشمارم ولی راه حل اجراشو نمی دونم
دوستان اگر کمک کنند و راه حلی را ارائه کنند ممنون میشم
فکر کنم یه همچین چیزی مد نظرتون هست:
ضمیمه 152116
ضمیمه 152117
ضمیمه 152118