حل مشكلة ايجاد الفرق بين تاريخيين باليوم او بالاسبوع او بالشهر او بالسنة .. الخ




لابد وان قد واجهتك مشكلة في ايجاد الفرق بين تاريخيين مختلفين قد تبحث عن ايجاد فرق الشهور او السنين او الايام او الساعات او الاسابيع  .

المشكلة هذه قد تواجهك اثنا ماتريد ان تبرمج برنامج تنبيهات مثلا لينبهك قبل انتهاء موعد  معين بفترة يحددها المستخدم 

هل من المعقول ان تبحث عن جميع المواعيد وتفحصها وتجري عليها مقارنة التاريخ عندك في النظام . هذا حل لايفضل لانه سوف يستهلك الموارد في جهاز العميل . لذلك يجب ان تكون هذه العملية في قاعدة البيانات اما كادالة او كااستعلام جاهز يقوم بالمهمة على اكمل وجهه وبسرعة . 

اتكلم عن الدالة

DATEDIFF Function


الهيئة العامة للدالة Syntax

DATEDIFF( interval, date1, date2 )

طريقة استخدامها بسيطة جداً 

 الدالة ترجع قيمة من نوع رقم صحيح int


SELECT DATEDIFF(year, '2012/04/28', '2014/04/28');
Result: 2

SELECT DATEDIFF(yyyy, '2012/04/28', '2014/04/28');
Result: 2

SELECT DATEDIFF(yy, '2012/04/28', '2014/04/28');
Result: 2

SELECT DATEDIFF(month, '2014/01/01', '2014/04/28');
Result: 3

SELECT DATEDIFF(day, '2014/01/01', '2014/04/28');
Result: 117

SELECT DATEDIFF(hour, '2014/04/28 08:00', '2014/04/28 10:45');
Result: 2

SELECT DATEDIFF(minute, '2014/04/28 08:00', '2014/04/28 10:45');
Result: 165

 

 

 

تعليقات