Example use case: http://www.techtalkz.com/microsoft-sql-server/170861-groupin...
Convert the date to seconds since date X (or unix timestamp / 60) and divide by the number of mins you need and convert to int.
Use the INTERVAL data type, it handles the logic properly.
Example use case: http://www.techtalkz.com/microsoft-sql-server/170861-groupin...