[英]JPA how to query the database without creating a table
我正在為數據庫任務使用JPA和Spring,並且需要在JPA Repo類中進行如下所示的聯接查詢
@Query("SELECT 1 as id, COUNT(bill) as bills, ba.resource, MAX(b.updatedAt) as latestdate FROM Bill b join b.billComp ba where ba.comp.comp = ?1 group by ba.resource")
public List<BillCalc> findByBills(Long comp);
我的實體類如下
@Entity
public class BillCalc {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column(name = "latestdate", nullable = false)
private Date latestdate;
@Column(name = "bills", nullable = false)
private Long bills;
@Column(name = "resource", nullable = false)
private String resource;
我無法為此創建表,有人可以幫助我使映射正常工作嗎? 它給我一個錯誤,說不能從Object轉換為BillCalc。
我嘗試了@SubSelect
但它沒有參數
向BillCalc
添加一個構造BillCalc
。
BillCalc(Integer id, long bills, String resouce, Date latestdate) {...}
然后使用“ Select new
查詢”:
SELECT new BillCalc(1, COUNT(bill), ba.resource, MAX(b.updatedAt)) FROM Bill b join b.billComp ba WHERE ba.comp.comp = ?1 group by ba.resource")
@請參見JSR-000220 Enterprise JavaBeans 3.0最終發行版中的第4.8.2節“ SELECT子句中的構造函數表達式” (持久性)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.