Registros de grupo por tempo

Eu tenho uma tabela contendo uma coluna datetime e algumas outras colunas. A coluna datetime representa um evento acontecendo. Ele pode conter uma hora (o evento aconteceu naquele momento) ou NULL (o evento não aconteceu)

Agora quero contar o número de registros que acontecem em intervalos específicos (15 minutos), mas não sei como fazer isso.

exemplo:

<code>id | time                | foreign_key
1  | 2012-01-01 00:00:01 | 2
2  | 2012-01-01 00:02:01 | 4
3  | 2012-01-01 00:16:00 | 1
4  | 2012-01-01 00:17:00 | 9
5  | 2012-01-01 00:31:00 | 6
</code>

Agora quero criar uma consulta que crie um conjunto de resultados semelhante a:

<code>interval            | COUNT(id)
2012-01-01 00:00:00 | 2
2012-01-01 00:15:00 | 2
2012-01-01 00:30:00 | 1
</code>

Isso é possível em SQL ou alguém pode aconselhar que outras ferramentas eu poderia usar? (por exemplo, exportar os dados para um programa de planilha eletrônica não seria um problema)

questionAnswers(2)

yourAnswerToTheQuestion