Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.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
Java org.hibernate.hql.internal.ast.ErrorCounter:意外令牌:(_Java_Sql_Hibernate_Hql_Jpa 2.0 - Fatal编程技术网

Java org.hibernate.hql.internal.ast.ErrorCounter:意外令牌:(

Java org.hibernate.hql.internal.ast.ErrorCounter:意外令牌:(,java,sql,hibernate,hql,jpa-2.0,Java,Sql,Hibernate,Hql,Jpa 2.0,当我尝试执行以下查询时,出现以下错误- 错误 质疑 请帮忙。试试看 String sSubQuery = "SELECT SUM(om.originalSize), MAX(om.lastModified) "+ "FROM "+ "ObjectMetadata om "+ "WHERE om.informationStoreId = :informationStoreDefinitionID "+

当我尝试执行以下查询时,出现以下错误-

错误

质疑

请帮忙。

试试看

String sSubQuery = "SELECT SUM(om.originalSize), MAX(om.lastModified) "+ 
                   "FROM "+ "ObjectMetadata om "+ 
                   "WHERE om.informationStoreId = :informationStoreDefinitionID "+ 
                   "GROUP BY om.path, om.originalSize";

Query q = getEm().createQuery(sQuery);
q.addParameter("informationStoreDefinitionID",22);

由于您在外部查询中没有使用MAXom.lastModified,您可以省略它。事实上,由于您只是使用过滤器对om.originalSize求和,您根本不需要派生表?表包含文件的元数据,它可能有多个条目对应于文件名,但在中有不同的上次修改日期表。我需要的是-最近更新或修改的所有文件的总大小。当我在postgres中执行以下查询时,它已成功执行-从select om.path中选择sumo.original\u size,om.original\u size,MAXom.last\u modified FROM object\u metadata om WHERE om.information\u store\u id='ff0dcb68-8aab-40f0-b8d8-fcfb82396f5d'按om.path,om.original_size o;分组@StuartLC我需要对MaxlastModified的子查询结果应用sum。因此sum需要仅对具有max LASTMODIFED日期的所有记录应用sum
String sSubQuery =  "SELECT om.path, om.originalSize, MAX(om.lastModified) "+
                    "FROM "+
                    "ObjectMetadata om "+
                    "WHERE om.informationStoreId = '"+informationStoreDefinitionID+"' "+
                    "GROUP BY om.path, om.originalSize";

             String sQuery =  "SELECT SUM(o.originalSize) "+
                    "FROM "+
                    "("+
                    " "+sSubQuery+
                    " ) "+
                    "o";

            Query q = getEm().createQuery(sQuery);
String sSubQuery = "SELECT SUM(om.originalSize), MAX(om.lastModified) "+ 
                   "FROM "+ "ObjectMetadata om "+ 
                   "WHERE om.informationStoreId = :informationStoreDefinitionID "+ 
                   "GROUP BY om.path, om.originalSize";

Query q = getEm().createQuery(sQuery);
q.addParameter("informationStoreDefinitionID",22);