SUBDATE (SUBDATE)
با تابع SUBDATE() می توانیم از یک تاریخ کم کنیم. این یعنی «کم کردن تاریخ در MySQL». مثل کم کردن روز از تاریخ امتحان تا برنامه ریزی راحت تر شود.
تعریف و کاربرد — کم کردن تاریخ در MySQL
تابع SUBDATE() یک «بازه زمانی (Interval)» را از تاریخ کم می کند و همان نوع تاریخ/زمان را برمی گرداند.
سینتکس
SUBDATE(date, INTERVAL value unit);
SUBDATE(date, days);
واحدهای بازه
واحدها شامل DAY، HOUR، MINUTE، MONTH، YEAR و ترکیبی ها هستند. مقدار منفی یعنی اضافه کردن.
مثال ها
کم کردن 10 روز
از تاریخ مشخص، 10 روز کم می کنیم.
SELECT SUBDATE("2017-06-15", INTERVAL 10 DAY);
کم کردن 15 دقیقه
از زمان، 15 دقیقه کم می کنیم.
SELECT SUBDATE("2017-06-15 09:34:21", INTERVAL 15 MINUTE);
کم کردن 3 ساعت
از زمان، 3 ساعت کم می کنیم.
SELECT SUBDATE("2017-06-15 09:34:21", INTERVAL 3 HOUR);
افزودن 2 ماه با مقدار منفی
مقدار منفی یعنی اثرِ برعکس؛ اینجا 2 ماه اضافه می شود.
SELECT SUBDATE("2017-06-15", INTERVAL -2 MONTH);
فرم ساده با روز
در فرم دوم، فقط تعداد روز را می دهیم.
SELECT SUBDATE("2017-06-15", 7);
نکات و ترفندها
نکته: value منفی باشد، نتیجه معکوس می شود و زمان اضافه می شود.
نکته: برای نگارش مشابه، می توانی DATE_SUB() را نیز ببینی.
هشدار: فرمت تاریخ باید معتبر باشد تا خطا نگیری.
گام های عملی سریع
- تاریخ پایه را مشخص کن.
- واحد و مقدار بازه را تعیین کن.
- کوئری
SUBDATEرا اجرا و نتیجه را بررسی کن.
جمع بندی سریع
- کم کردن تاریخ با
SUBDATEساده است. - فرم بازه یا فقط روز را پشتیبانی می کند.
- مقدار منفی یعنی اضافه کردن زمان.
- برای حالت مشابه از DATE_SUB() هم استفاده کن.