我有两个表实体:
@Entity
@Table(name = "TEST_PARENT")
public class Parent{
@Id
Long id;
@Column(name = "PARENT_CONTRACT_ID")
Long parentContractId;
//getters and setters
}
-
@Entity
@Table(name = "TEST_CHILD")
public class Child{
@Id
Long id;
@ManyToOne()
@JoinColumn(name = "PARENT_ID", referencedColumnName = "PARENT_CONTRACT_ID")
Parent parent;
}
是否有任何方法可以为此表数据获取具有最大ID(或为get parent选择自定义)的父级:
**TEST_PARENT**
ID PARENT_CONTRACT_ID
1 100
2 100
3 200
**TEST_CHILD**
ID PARENT_ID
1 100
查询选择:"来自Child t,其中t.id = 1&#34 ;;
查询结果子类:
{Id = 1
家长 - ID = 2 ,PARENT_CONTRACT_ID = 100 }
答案 0 :(得分:0)
查询将是:
SELECT max(c.id) FROM Child c
您可以像EntityManager
一样使用此方式:
Long max = em.createQuery("SELECT max(c.id) FROM Child c", Long.class).getSingleResult();