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.


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)

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

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
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.