Я хочу округлить текущее время в 10-минутном блоке. Я могу сделать это на Java, php или mysql (желательно), что бы ни считалось лучше. Например:
08:49:50 -> 08:40:00
14:23:12 -> 14:20:00
09:32:11 -> 09:30:00
12:20:00 -> 12:20:00
Я пытался решить из Круглая дата с 10-минутным интервалом но mysql терпит неудачу с этим.
Вот ответ из следующего поста stackoverflow: Как округлить время до ближайшего 15-минутного сегмента
SELECT FROM_UNIXTIME( TRUNCATE(UNIX_TIMESTAMP(NOW()) / 900,0)*900);
Кредиты Гэвину Тауи!
Просто замените 900 (15 минут) на 600 (10 минут).
public static Date roundDown10Min(Date date) {
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int minutes = cal.get(Calendar.MINUTE);
int roundedMinutes = (minutes/10)*10;
cal.set(Calendar.MINUTE, roundedMinutes );
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
return cal.getTime();
}