Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jpa 必须为范围变量声明提供标识变量_Jpa_Eclipselink_Jpql - Fatal编程技术网

Jpa 必须为范围变量声明提供标识变量

Jpa 必须为范围变量声明提供标识变量,jpa,eclipselink,jpql,Jpa,Eclipselink,Jpql,我试图在我的jpa中使用此查询,但它不起作用: List<Object[]> query = em.createQuery("SELECT Tstat.idStatistiques, TL.codeLieu, TL.materiel, TL.zone, sum(Tstat.colis) as colis, Tstat.defaut, sum(Tstat.nbreDefaut) as nbreDefaut," + " sum(Tstat.nonL

我试图在我的jpa中使用此查询,但它不起作用:

List<Object[]> query = em.createQuery("SELECT Tstat.idStatistiques, TL.codeLieu, TL.materiel, TL.zone, sum(Tstat.colis) as colis, Tstat.defaut, sum(Tstat.nbreDefaut) as nbreDefaut,"
                    + " sum(Tstat.nonLu) as nonLu, sum(Tstat.multiple) as multiple, sum(Tstat.nonRecu) as nonRecu, sum(Tstat.incoherent) as incoherent, sum(Tstat.requete) as requete , "
                    + "sum(Tstat.tempsFonctionnement) as tempsFonctionnement, SUM(Tstat.tempsUtilisation) as tempsUtilisation, Tstat.modeFonctionnement FROM "
+ "( SELECT CURRENT_DATE as horodatage, St.idStatistiques, St.colis, St.defaut, St.nbreDefaut, St.nonLu, St.requete, St.multiple, St.nonRecu, St.incoherent, St.tempsFonctionnement, St.tempsUtilisation, St.modeFonctionnement FROM Statistique St )"                  
                    + " UNION "                     
+ "(SELECT h.horodatage, h.idStatistiques, h.colis, h.defaut, h.nbreDefaut, h.nonLu, h.nonRecu, h.requete, h.multiple, h.incoherent, h.tempsFonctionnement, h.tempsUtilisation, h.modeFonctionnement FROM Statistiqueshisto h )"
                    + " Tstat "
                    + "LEFT JOIN (SELECT * FROM Lieux) as TL on Tstat.idStatistiques = TL.code_VI WHERE idStatistiques like :A  ").setParameter("A", 0040+"%").getResultList(); 
这给了我错误

表达式无效,这意味着它不遵循JPQL 语法


那么就让它遵循JPQL。选择*在JPQL中不作为启动程序存在!工会也不存在。加入子查询也不存在。对于select*我完全同意。我在关注前一部分。对于UNION,我使用eclipseLink,正如这里所解释的那样接受它:那么让它遵循JPQL。选择*在JPQL中不作为启动程序存在!工会也不存在。加入子查询也不存在。对于select*我完全同意。我在关注前一部分。对于UNION,我使用eclipseLink,正如这里所解释的那样接受它: