Como converter DATETIME como DATE no mysql?

92

Minha consulta é esta. Eu tenho um monte de entradas e quero agrupá-los por data. Mas em vez de ter data em meu banco de dados, tenho um campo datetime. O que eu faço?

select * from follow_queue group by follow_date cast follow_date as date

Isso não está funcionando.

Zack Burt
fonte
2
Experimente: select * from follow_queue group by cast(follow_date as date)primeiro.
NawaMan
3
você não precisa lançar, apenas use a função DATE ()
markus
A função DATE () não converte a data e hora em uma string? Claro, funciona para agrupamento por data, mas acho que a resposta de NawaMan é mais correta com base na formulação da pergunta
DJDave

Respostas:

178

DATE()Função de uso :

select * from follow_queue group by DATE(follow_date)
ChssPly76
fonte
Como faço para obter a "contagem" de entradas por data? Basta selecionar o campo, contar (*) do grupo follow_queue por data (follow_date)?
Zack Burt
3
Sim. select DATE(follow_date), count(*) from follow_queue group by 1
ChssPly76
2
Agrupar por 1? O que isso significa?
Zack Burt
11
Significa agrupar pela primeira coluna na lista de seleção, neste caso DATE(follow_date). Você também pode fazer isso com ORDER BY- ORDER BY 1, 2por exemplo
ChssPly76 de
-7

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

http://www.tutorialspoint.com/mysql/mysql-date-time-functions.htm

use a função Data diretamente. Espero que funcione

Abhi
fonte
3
A mesma resposta correta / foi fornecida 5 anos antes de sua postagem. Se você quiser oferecer os hiperlinks, basta adicioná-los como comentários na pergunta. Isso não tem valor como resposta e parece que vários outros voluntários concordam - com base nos votos negativos. Sinta-se à vontade para excluir se concordar com minha lógica e você irá recuperar os pontos de representação perdidos (caso contrário, a Comunidade pode decidir tomar essa ação em seu nome de qualquer maneira).
mickmackusa