Boa noite Pessoal. Estou com uma dúvida. Estou montando um hql que retorne um número inteiro mostrando a diferenca em dias. O bd é postgres. O sql seria mais ou menos assim. select age(dataAtual, timestamp aniversario) from funcionario.. Queria q retornasse em dias e em hql.
Duvida em HQL que retorne número de dias
5 Respostas
ResultSet resultado = seuStatement.executeQuery(“SELECT AGE(dataAtual,timestamp aniversario) from funcionario”);
Tenta issae
~ Lembrando: o resultado deve rodar dentro de um laço pra poder retornar algo
while(resultado.next) {
String res = resultado.getString(“dataAtual”);
)
Boa noite. Esta pensando em nao usar sql. Pensando na ideia que vc me passou. Criar um Dialeto Customizado. Para aceitar essa função q vc me disse. Tipo assim.
public class CustomDialect extends PostgreSQLDialect {
public CustomDialect () {
super();
registerFunction( “aage”, new SQLFunctionTemplate( Hibernate.INTEGER, “age(?1,timestamp ?2)” ) );
}
}
Só que ainda não funcionou
A partir de Dialeto Customizado já não posso colaborar, perdão! Mas se quiser ajuda com SQL, posso dar uma força! Faço isso quase constantemente, puxando dados do campo de data de aniversário de uma pessoa e colocando dentro de uma String, para verificar a data de aniversário e avisar no início do sistema, quem faz aniversário e quando. Loucura, mas faço.
Boa tarde. Vou querer uma ajuda sua. O select q estou tentando e esse aqui.SELECT age(now(),aniversario) from funcionario;. Só que queria apenas o ano. Essa funcionalidade do seu sistema é bem legal. Acho interessante essas notificações para avisar o usuário.
Tenta recorrer à “gambiarra” kkk
Eu capturo a data em uma String e divido em dd/mm/aaaa, divido usando split() e armazeno em um vetor. vetor[1], vetor[2], vetor[3]
A posicao 1 fica com o dia, a 2 fica com o mês e a 3 com o ano.
String[] vetor = suaString.split("/");
Acho que é isso