Mysql
 sql >> Database >  >> RDS >> Mysql

Come arrotondare un tempo al segmento di 15 minuti più vicino

SELECT SEC_TO_TIME(FLOOR((TIME_TO_SEC(CURTIME())+450)/900)*900)

In questo esempio ho usato CURTIME() per l'ora di input, ma puoi usare qualsiasi campo dell'ora.

900 secondi=15 minuti (il periodo a cui arrotondare), 450 secondi è la metà (per fornire l'elemento di arrotondamento). Ho testato con 1800/900 per ottenere la mezz'ora più vicina, dovrebbe funzionare con altri (600/300 per 10 minuti ecc.).