Het is een beetje vervelend als je het doet met datetime datatypes; een mooie kandidaat voor een opgeslagen functie.
DATE_SUB(DATE_SUB(time, INTERVAL MOD(MINUTE(time),5) MINUTE ),
INTERVAL SECOND(time) SECOND)
Het is gemakkelijker als u UNIXTIME-tijdstempels gebruikt, maar dat is beperkt tot een periode van 1970 - 2038.
FROM_UNIXTIME(UNIX_TIMESTAMP(time) - MOD(UNIX_TIMESTAMP(time),300))
Veel succes.