Agrupar somente por data num campo timestamp
Turma. num comando sql, como mando agrupar por um campo timestamp de forma q ele agrupe somente pela data ignorando a hora??
tentei group by date(dt_hr_tarefa) mas não rola
Q devo fazer?
tentei group by date(dt_hr_tarefa) mas não rola
Q devo fazer?
Zenner
Curtidas 0
Respostas
Noelrocha
22/02/2005
Em MSSQL tem como fazer isso sem problemas ....
um select exemplo seria ...
select convert(varchar(8),DATA,8) as hora
from CLIENTES
group by convert(varchar(8),DATA,8)
qual banco de dados você usa?!
um select exemplo seria ...
select convert(varchar(8),DATA,8) as hora
from CLIENTES
group by convert(varchar(8),DATA,8)
qual banco de dados você usa?!
GOSTEI 0
Noelrocha
22/02/2005
Em MSSQL tem como fazer isso sem problemas ....
um select exemplo seria ...
select convert(varchar( 8 ),DATA, 8 ) as hora
from CLIENTES
group by convert(varchar( 8 ) ,DATA, 8 )
um select exemplo seria ...
select convert(varchar( 8 ),DATA, 8 ) as hora
from CLIENTES
group by convert(varchar( 8 ) ,DATA, 8 )
GOSTEI 0
Gandalf.nho
22/02/2005
Qual seu banco de dados?
GOSTEI 0
Zenner
22/02/2005
Firebird...
Encontrei o cod q pega somente a data, porém quando agrupo ele ou dá erro ou não faz..
------------------------- Coluna não encontrada ----------------------
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste
FROM acoes group by cd_funcionario, teste
------------------------- Token unknown ----------------------
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste
FROM acoes group by cd_funcionario, dt_hr_tarefa
------------------------- Erro no cast --------------------------
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste
FROM acoes group by cd_funcionario, cast(dt_hr_tarefa as date)
Encontrei o cod q pega somente a data, porém quando agrupo ele ou dá erro ou não faz..
------------------------- Coluna não encontrada ----------------------
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste
FROM acoes group by cd_funcionario, teste
------------------------- Token unknown ----------------------
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste
FROM acoes group by cd_funcionario, dt_hr_tarefa
------------------------- Erro no cast --------------------------
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste
FROM acoes group by cd_funcionario, cast(dt_hr_tarefa as date)
GOSTEI 0
Gandalf.nho
22/02/2005
Qual versão do Firebird você está usando? Acho que isso só funciona na versão 1.5
GOSTEI 0
Zenner
22/02/2005
1.5 mesmo....
Porém acho q consegui.. Resolvi criar uma view contendo todos os dados q preciso, formatando o campo timestamp pra campo data.. Depos dei um select com group by
Porém acho q consegui.. Resolvi criar uma view contendo todos os dados q preciso, formatando o campo timestamp pra campo data.. Depos dei um select com group by
GOSTEI 0
Gandalf.nho
22/02/2005
Faça um teste assim e veja se funcione:
SELECT cd_funcionario, cast(dt_hr_tarefa as date) as teste FROM acoes group by cd_funcionario, 2
GOSTEI 0
Zenner
22/02/2005
rolou não.. mas consegui fazer.. Só falta terminar o sql final....
Como funciona o group com order??
select cd_funcionario, max(dt_tarefa), nm_tarefa from VW_ACOES group by cd_funcionario order by cd_funcionario, dt_tarefa, nm_tarefa
Como agrupo isso por cd_funcionario e dt_tarefa mostrando tb o nome da tarefa??
Como funciona o group com order??
select cd_funcionario, max(dt_tarefa), nm_tarefa from VW_ACOES group by cd_funcionario order by cd_funcionario, dt_tarefa, nm_tarefa
Como agrupo isso por cd_funcionario e dt_tarefa mostrando tb o nome da tarefa??
GOSTEI 0
Paulo_amorim
22/02/2005
Olá
Não sei se ajuda, e não sei se funciona em todos os bancos, mas pode-se fazer um TRUNC na data para eliminar a hora...
Ex. ORACLE:
SELECT TRUNC(sysdate) FROM dual
Retorna 22/02/2005
Espero que ajude
Até+
Não sei se ajuda, e não sei se funciona em todos os bancos, mas pode-se fazer um TRUNC na data para eliminar a hora...
Ex. ORACLE:
SELECT TRUNC(sysdate) FROM dual
Retorna 22/02/2005
Espero que ajude
Até+
GOSTEI 0
Gandalf.nho
22/02/2005
Acho que nesse caso não vai dar, pelo menos não diretamente. De acordo com a documentação do FB 1.5 ele não aceita funções agregadas (MIN, MAX, COUNT, SUM...) na cláusula GROUP BY.
GOSTEI 0
Rômulo Barros
22/02/2005
[color=red:a81fb1035c]Veja se [url=http://forum.devmedia.com.br/viewtopic.php?t=50419&highlight=&sid=7ab17ae8ca5a46a66d0359e233a2d75d]ESTE LINK[/url] pode ajudar...[/color:a81fb1035c]
GOSTEI 0