date_ceil
Description
Syntax
DATETIME DATE_CEIL(DATETIME datetime, INTERVAL period type)
Convert the date to the nearest rounding up time of the specified time interval period.
The datetime parameter is a valid date expression.
The period parameter specifies how many units each cycle consists of, starting from 0001-01-01T00:00:00
Type: YEAR, MONTH, DAY, HOUR, MINUTE, SECOND.
Example
mysql [(none)]>select date_ceil("2023-07-13 22:28:18",interval 5 second);
+--------------------------------------------------------------+
| second_ceil('2023-07-13 22:28:18', 5, '0001-01-01 00:00:00') |
+--------------------------------------------------------------+
| 2023-07-13 22:28:20 |
+--------------------------------------------------------------+
1 row in set (0.01 sec)
mysql [(none)]>select date_ceil("2023-07-13 22:28:18",interval 5 minute);
+--------------------------------------------------------------+
| minute_ceil('2023-07-13 22:28:18', 5, '0001-01-01 00:00:00') |
+--------------------------------------------------------------+
| 2023-07-13 22:30:00 |
+--------------------------------------------------------------+
1 row in set (0.01 sec)
mysql [(none)]>select date_ceil("2023-07-13 22:28:18",interval 5 hour);
+------------------------------------------------------------+
| hour_ceil('2023-07-13 22:28:18', 5, '0001-01-01 00:00:00') |
+------------------------------------------------------------+
| 2023-07-13 23:00:00 |
+------------------------------------------------------------+
1 row in set (0.01 sec)
mysql [(none)]>select date_ceil("2023-07-13 22:28:18",interval 5 day);
+-----------------------------------------------------------+
| day_ceil('2023-07-13 22:28:18', 5, '0001-01-01 00:00:00') |
+-----------------------------------------------------------+
| 2023-07-15 00:00:00 |
+-----------------------------------------------------------+
1 row in set (0.00 sec)
mysql [(none)]>select date_ceil("2023-07-13 22:28:18",interval 5 month);
+-------------------------------------------------------------+
| month_ceil('2023-07-13 22:28:18', 5, '0001-01-01 00:00:00') |
+-------------------------------------------------------------+
| 2023-12-01 00:00:00 |
+-------------------------------------------------------------+
1 row in set (0.01 sec)
mysql [(none)]>select date_ceil("2023-07-13 22:28:18",interval 5 year);
+------------------------------------------------------------+
| year_ceil('2023-07-13 22:28:18', 5, '0001-01-01 00:00:00') |
+------------------------------------------------------------+
| 2026-01-01 00:00:00 |
+------------------------------------------------------------+
1 row in set (0.00 sec)
Keywords
DATE_CEIL,DATE,CEIL
Best Practices
See also