java - 如何在 Spring Boot 中对两个实体进行内部连接?
问题描述
我想从存储库中进行内部连接查询。原始查询如下所示:
select p.id_persona,p.nombre,p.appaterno,p.apmaterno, bp.fecha_ingreso,bp.fecha_salida
from bitacora_personas as bp
inner join persona as p on p.id_persona=bp.fk_id_persona
where p.fk_id_empresa= :idEmpresa
我在存储库中有这样的方法:
@Repository("bitacoraPersonasRepository")
public interface BitacoraPersonasRepository extends JpaRepository<BitacoraPersonas, Serializable> {
@Query(value = "select p.id_persona,p.nombre,p.appaterno,p.apmaterno, bp.fecha_ingreso,bp.fecha_salida from bitacora_personas as bp\n" +
"inner join persona as p on p.id_persona=bp.fk_id_persona\n" +
"where p.fk_id_empresa= :idEmpresa",
nativeQuery = true)
public List<BitacoraPersonas> getPersonasPorEmpresa(@Param("idEmpresa") Integer idEmpresa);
}
当我尝试运行它时,它会抛出一个错误,指出id_bitacora_personas
来自 BitacoraPersonas 实体的列不存在,即使表中的列存在。我认为这是因为 Persona 实体没有该列,并且当我尝试getPersonasPorEmpresa()
从返回 List of 的控制器运行该方法时BitacoraPersonas
,它不适用于Persona
实体,因为它们没有正确映射或其他东西。如您所见,我正在尝试从Persona
实体中检索属性,就像从BitacoraPersona
内部连接中的实体一样。我该如何解决这个问题?
解决方案
推荐阅读
- r - bsts 后验分布
- ms-access - 计算不同记录的字段持续时间
- android - 我们如何能够创建抽象的 CountDownTimer 类的对象
- c++ - 如何使用动态内存分配在现有数组中创建和添加新对象
- php - 搜索并用多个随机值替换某个值
- java - 如何将 Internet mime 消息的所有内容复制到 Notes 中的正文项?
- php - 如何在 url 而不是 mysite/product/id => mysite/product/title 中输出 yii2?
- database - BCNF:寻找实际使用超级键而不是候选键的示例
- php - 内存中用于测试的 Symfony4 SQLite 无法正常工作
- r - 如何在R中现有日期的30天内找到下一个最新日期?