Estou com problemas para realizar uma consulta SQL simples no banco mas no JAVA estou com muitas dificuldades. Tenho 2 classes Atendimentos e Motivos.
Criei a seguinte classe:
public class ConsultasIntegradasRepository implements Serializable {
private static final long serialVersionUID = -7453686932955572773L;
@Produces
@PersistenceContext(unitName="sacFumacenseDS")
EntityManager em;
public List<AvgAtendConcluidos> getList() {
List query = em.createNativeQuery("SELECT b.descricao as 'motivoSAC', avg(DATEDIFF(a.dataEncerramento,a.dataAbertura)) as 'mediaAtendimento' "+
" FROM atendimentos a " +
" INNER JOIN motivos b ON a.codigoMotivo = b.codigo "+
" WHERE a.situacao = 'R' "+
" GROUP BY b.descricao").getResultList();
System.out.println(query);
return query;
}
}
A classe AvgAtendConcluidos foi criada com dois campos apenas para identificar as colunas resultantes do SQL.
public class AvgAtendConcluidos {
private String motivoSAC;
private BigDecimal mediaAtendimento;
public AvgAtendConcluidos() {
}
public AvgAtendConcluidos(String motivoSAC, BigDecimal mediaAtendimento) {
this.motivoSAC = motivoSAC;
this.mediaAtendimento = mediaAtendimento;
}
public String getMotivoSAC() {
return motivoSAC;
}
public void setMotivoSAC(String motivoSAC) {
this.motivoSAC = motivoSAC;
}
public BigDecimal getMediaAtendimento() {
return mediaAtendimento;
}
public void setMediaAtendimento(BigDecimal mediaAtendimento) {
this.mediaAtendimento = mediaAtendimento;
}
Nunca precisei fazer nenhuma consulta desta… alguem poderia dar uma luz?
As classes Atendimentos e Motivos estão em :