Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

tchaves

Criando grupos por horário AM e PM

Recommended Posts

Olá pessoal, bom dia!

 

Gostaria da ajuda dos senhores para criar um grupo com somatórios de horários de atendimentos. Eu tenho um sistema que grava em um banco MySQL e em uma tabela o horário da abertura de um atendimento, está neste formato: '2015-05-28 08:31:47'. Gostaria de criar um group by que me informasse os horários dessas aberturas e da quantidade para cada horário. Exemplo:

 

 

HORÁRIO QUANTIDADE 08:00 20 09:00 10 13:00 15 20:00 50

 

Alguém que possa me ajudar com essa necessidade?

 

Obrigado desde já!

 

Tácito Chaves

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi a tabela está pronta.

 

Como o campo é DATETIME, você passa a data pelo WHERE (função DATE()), e com as funções COUNT() e HOUR() você faz a contagem por hora:

SELECT
  DATE(data_abertura) AS data_abertura,
  HOUR(data_abertura) AS horario, # Tudo que foi aberto entre 08:00:00 e 08:59:59 torna-se 8
  COUNT(data_abertura) AS qtd
FROM tabela
WHERE DATE(data_abertura) = '2015-05-28'
GROUP BY horario # agrupando pelo ALIAS, atentar-se para que não exista um campo com mesmo nome

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu obtive a resposta certinho, mas será que tinha como os horários já virem neste formato: HH:MM? pois estão vindo assim:

 

mysql> SELECT HOUR(create_time) AS Schedule, COUNT(create_time) AS Quantity FROM ticket WHERE ticket.create_time between '2015-07-01' and '2015-07-22' GROUP BY Schedule;
+----------+----------+
| Schedule | Quantity |
+----------+----------+
| 0 | 12 |
| 1 | 12 |
| 2 | 12 |
| 3 | 12 |
| 4 | 10 |
| 8 | 41 |
| 9 | 44 |
| 10 | 47 |
| 11 | 44 |
| 12 | 8 |
| 13 | 8 |
| 14 | 30 |
| 15 | 44 |
| 16 | 59 |
| 17 | 69 |
| 18 | 33 |
| 19 | 13 |
| 20 | 12 |
| 21 | 12 |
| 22 | 12 |
| 23 | 12 |
+----------+----------+

Agradeço desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.