PERIOD_DIFF (PERIOD_DIFF)
تابع «اختلاف دوره ها در MySQL» یعنی PERIOD_DIFF() فاصله دو دوره را برحسب ماه می دهد. دوره (Period) یعنی عددی مثل YYMM یا YYYYMM. خروجی یک عدد ماهی است؛ مثل تفاوت دو ترم مدرسه.
تعریف و کاربرد
PERIOD_DIFF(period1, period2) اختلاف دو دوره را برمی گرداند. نتیجه برحسب ماه است. توجه کن هر دو ورودی باید یکسان فرمت شوند؛ هر دو YYMM یا هر دو YYYYMM.
سینتکس (Syntax)
PERIOD_DIFF(period1, period2);
نمونه های کاربردی
اختلاف ماهی بین دو دوره
مثل فاصله بین دو امتحان ترم؛ فقط ماه ها مهم اند.
SELECT PERIOD_DIFF(201710, 201703);
وقتی نتیجه منفی می شود
اگر دوره اول عقب تر باشد، خروجی منفی خواهد شد.
SELECT PERIOD_DIFF(201703, 201803);
استفاده از فرمت کوتاه YYMM
هر دو ورودی باید یکسان باشند؛ هر دو کوتاه یا هر دو بلند.
SELECT PERIOD_DIFF(1703, 1612);
نکات مهم
نکته: این تابع با دوره های ماهانه کار می کند؛ تاریخ کامل نیست.
نکته: برای افزودن ماه ها از PERIOD_ADD() استفاده کن.
گام های عملی
- دو مقدار دوره با یک فرمت آماده کن.
- کوئری
SELECT PERIOD_DIFF(p1, p2);را اجرا کن. - علامت نتیجه را تفسیر کن؛ منفی یعنی p1 عقب تر است.
جمع بندی سریع
- خروجی برحسب ماه است.
- هر دو ورودی باید هم فرمت باشند.
- نتیجه می تواند منفی شود.
- برای افزودن ماه ها: PERIOD_ADD().