Es ist ein wenig unangenehm, wenn Sie es mit datetime-Datentypen machen; ein netter Kandidat für eine gespeicherte Funktion.
DATE_SUB(DATE_SUB(time, INTERVAL MOD(MINUTE(time),5) MINUTE ),
INTERVAL SECOND(time) SECOND)
Es ist einfacher, wenn Sie UNIXTIME-Zeitstempel verwenden, aber das ist auf einen Datumsbereich von 1970 bis 2038 beschränkt.
FROM_UNIXTIME(UNIX_TIMESTAMP(time) - MOD(UNIX_TIMESTAMP(time),300))
Viel Glück.