下午好,我在MYSQL中有这个查询,它给了我一个总和的数据,但我想将该查询转移到JPQL语言。
SELECT SUM(`TOTAL_HORA_HOMBRE`) FROM `tiempos` WHERE `ID_ORDENTRABAJO` = 4696;
感谢。
答案 0 :(得分:0)
JPQL语法非常接近标准SQL。
但MySQL使用反向标记来分隔表名和其他标识符。这是非标准的。
取出后面的标记,我相信这个查询可以正常工作。
SELECT SUM(TOTAL_HORA_HOMBRE) FROM tiempos WHERE ID_ORDENTRABAJO = 4696;
有关JPQL的完整文档,请参阅http://docs.oracle.com/javaee/7/tutorial/persistence-querylanguage.htm#BNBTG。
答案 1 :(得分:0)
这是本机SQL查询。要使用JPQL,您必须使用@Entity注释和@Table注释注释一个java类,并指向tiempos表。
如果您的实体看起来像:
@Entity
@Table(name = "tiempos")
public class Tiempos {
@Column(name = "TOTAL_HORA_HOMBRE")
Double totalHolaHombre;
@ManyToOne
@JoinColumn(name = "ID_ORDENTRABAJO")
Ordentrabajo ordentrabajo;
}
然后JPQL查询看起来像:
SELECT SUM(t.totalHolaHombre) FROM Tiempos t WHERE t.ordentrabajo = :paramOrdentrabajo;