我想使用以下参数显示所有未应答和未应答的检查表(应答检查表位于ResponseCheckLists表中):idequipement和idMission。
@Query("SELECT check,resp,eq FROM Equipements eq INNER JOIN CheckLists check WHERE eq.idEquipements = check.equipements.idEquipements LEFT JOIN ResponsesCheckLists resp ON check.idCheckLists=resp.CheckLts.idCheckLists AND resp.Respmission.idMission = :idmiss WHERE eq.idEquipements = :idEqp ")
public List<ResponsesCheckLists> ListCheckListsNonRepondu(@Param("idEqp") long idEqp, @Param("idmiss") long idmiss);
运行此查询后,我显示以下错误消息:
antlr.NoViableAltException: unexpected token: LEFT
------
Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: LEFT near line 1, column 148 [SELECT check,resp,eq FROM com.SSC.DAO.Entities.Equipements eq INNER JOIN CheckLists check WHERE eq.idEquipements = check.equipements.idEquipements LEFT JOIN ResponsesCheckLists resp ON check.idCheckLists=resp.CheckLts.idCheckLists AND resp.Respmission.idMission = :idmiss WHERE eq.idEquipements = :idEqp ]
------
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'responsesCheckListsRepository': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List com.SSC.DAO.JPARepository.ResponsesCheckListsRepository.ListCheckListsNonRepondu(long,long)!
编辑1:
@Query("SELECT check,resp,eq FROM Equipements eq INNER JOIN CheckLists check ON eq.idEquipements = check.equipements.idEquipements"
+ " INNER JOIN ResponsesCheckLists resp ON check.idCheckLists=resp.CheckLts.idCheckLists AND resp.Respmission.idMission = :idmiss AND eq.idEquipements = :idEqp ")
public List<ResponsesCheckLists> ListCheckListsNonRepondu(@Param("idEqp") long idEqp, @Param("idmiss") long idmiss);
编辑错误1;
原因:java。lang.IllegalStateException:节点:org没有数据类型。冬眠hql。内部的阿斯特。树IdentNode-[IDENT]IdentNode:'check'{originalText=check}
ANTLR. Semantic异常:预期加入的路径!
原因:java。lang.IllegalArgumentException:方法公共抽象java的查询验证失败。util。列出com。SSC。刀。JPA是肯定的。回答问题回答。ListCheckListsNonRepondu(长,长)!
编辑2:
@Query("SELECT check , resp , eq FROM Equipements eq INNER JOIN CheckLists check ON eq.idEquipements = check.equipements.idEquipements"
+ " INNER JOIN ResponsesCheckLists resp ON check.idCheckLists=resp.CheckLts.idCheckLists AND resp.Respmission.idMission = :idmiss AND eq.idEquipements = :idEqp ")
public List<ResponsesCheckLists> ListCheckListsNonRepondu(@Param("idEqp") long idEqp, @Param("idmiss") long idmiss);
Edit2的错误:
原因:java。lang.IllegalStateException:节点:org没有数据类型。冬眠hql。内部的阿斯特。树IdentNode-[IDENT]IdentNode:'check'{originalText=check}antlr。SemanticException:应该是加入的路径!
如何更正此查询?
提前谢谢
这里有一个指定JPQL查询的Spring注释(@Query
)。您的JPQL查询应该遵循此链接中突出显示的语法(以及JPA规范)。可悲的是,你没有遵循这一点。
SELECT {result} FROM {from} WHERE {where} ...
任何“JOIN”都必须包含在从子句中。你已经在从子句中添加了一个JOIN,但是出于只有你知道的原因,你决定在WHERE子句中添加另一个JOIN!!事实上,你在那堆垃圾中有2个WHERE子句。
因为你没有发布你的实体,所以我们不可能告诉你你的查询应该是什么,所以我们看不到它们之间有什么关系,甚至看不到你想要实现什么。我们只能指出你的错误
我遇到了这个错误,请告诉我如何解决这个意外的标记:第1行257列附近的InnerJoin
问题内容: 我正在尝试与Jenkins构建过程一起运行以下Shell命令 现在构建失败 但是奇怪的是,当直接在Jenkin从站上运行此命令时,它可以正常工作。 如您所见,Jenkins也运行shell命令 。 任何帮助将不胜感激,因为我努力了几个小时 问题答案: 是由启用的扩展模式。目前尚不清楚如何在您的Jenkins从站中启用它,但是将命令添加到脚本中应该可以解决您的问题。
你好,我尝试在其他问题中搜索,但没有一个提到的解决方案,我尝试对我不起作用。 使用命令时: npm启动 我有一个错误: /src/index.js模块生成失败(来自./node_modules/babel-loader/lib/index.js):语法错误:d:/kodilla/projekty/webpack-to-do-app/src/index.js:意外>令牌(6:4) package.j
我正在尝试JPA2.1(eclipselink)中的“treat as”函数,但遇到了一个来自JPA的错误: 异常说明:ReportQuery结果大小不匹配。应为[263],但已检索到[197] 下面是我的JPQL查询(我更改了一些部分,以便更明确): 我们可以看到account和ad_account之间的左外部连接。此外,ad_account表不存在于select子句中。(idApp字段是主键的
我在执行查询时收到错误。错误是: org.hibernate.hql.internal.ast.查询同步异常:意外令牌:第1行,第239列附近的组[SELECTj.orderDate, MAX(j.endTime), MIN(j.startTime)fromfr.thelem.timesbatch.dao.entities.JobExecEntity j WHEREj.name=?0 ANDTO_
我在测试机智。ai与fb提供的样品,我运行在以下错误。。。 我对节点和机智很陌生。我使用了初始化并安装节点wit模块。能找个人帮忙吗?