Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

Ayuda query con JPQL

tengo esta entidad

public class AutorEntidad {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long Id;
private String nombre;
@Column(name = "fecha_nacimiento",nullable = true)
private int fechaNacimiento;
@Column(name = "fecha_muerte",nullable = true)
private int fechaMuerte;

}

cuando hago esta query con JPQL funciona

@Query("SELECT s FROM AutorEntidad s WHERE s.fechaMuerte < :fecha" ) y me da

[Cervantes Saavedra, Miguel de] el autor de mi entidad pero cuando intento esta query

@Query("SELECT s FROM AutorEntidad s WHERE s.fechaMuerte < :fecha AND s.fechaNacimiento >= :fecha") y da resultado [] tengo mal en la logica de la query? o esta mal escrita?

2 respuestas
solución!

¡Hola Oscar!

Por lo que veo en tu consulta JPQL, parece que estás intentando buscar autores cuya fecha de muerte sea anterior a una fecha específica y cuya fecha de nacimiento sea posterior o igual a otra fecha. Sin embargo, puede que estés teniendo un problema con la lógica de la consulta.

Si estás buscando autores que hayan nacido después o en la misma fecha que la fecha proporcionada y que hayan fallecido antes de la fecha proporcionada, la consulta debería ser así:

@Query("SELECT s FROM AutorEntidad s WHERE s.fechaNacimiento >= :fechaNacimiento AND s.fechaMuerte < :fechaMuerte")

Recuerda que en JPQL, debes utilizar los nombres de los atributos de la clase en lugar de los nombres de las columnas en la base de datos.

Espero que esta corrección te ayude a obtener los resultados deseados. ¡Buena suerte con tu consulta JPQL!

Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!

efectivamento estaba mal la logica, si quiero saber cuantos autores estababn vivo por ejemplo en 1700 tengo que buscar que nacimiento se ANTES o igual que la fecha dada y su muerte se DESPUES de la fecha dada, ya con la correccion dada y las pruebas ya selecciona la autores deseados gracias mucho