Java, MySQL или округление минут до следующих 10 минут

Я хочу округлить текущее время в 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 терпит неудачу с этим.

-2

Решение

Вот ответ из следующего поста stackoverflow: Как округлить время до ближайшего 15-минутного сегмента

SELECT FROM_UNIXTIME( TRUNCATE(UNIX_TIMESTAMP(NOW()) / 900,0)*900);

Кредиты Гэвину Тауи!

Просто замените 900 (15 минут) на 600 (10 минут).

1

Другие решения

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();

}
0

По вопросам рекламы [email protected]