当前位置: 首页 > 知识库问答 >
问题:

为什么我在使用TopLink的JPQL联接查询中出现异常?

胡和煦
2023-03-14

下面是运行此查询时得到的异常消息。请告诉我是什么错误?

查询:

select w.tagName,w.tagDescription, f.chosenDate from TagEntity w LEFT JOIN TagFavouriteEntity f ON w.tagId=f.tagId

例外情况:

Syntax error parsing the query [select w.tagName,w.tagDescription, f.chosenDate from TagEntity w LEFT JOIN TagFavouriteEntity f ON w.tagId=f.tagId], line 1, column 95: syntax     error at [f].
Internal Exception: line 1:95: expecting DOT, found 'f'

我有两个实体:TagEntity和TagFavoriteEntity。他们之间没有关系。它们之间只有一个共同的属性“tagid”,它也是TagEntity类的主键。

共有1个答案

马峻
2023-03-14

JPQL不是SQL。JPQL中的联接不是这样表示的。JPQL使用实体之间的关联。您没有发布您的实体,所以让我们假设您有一个order实体具有一个OneToMany关联lines和一个line实体,一个正确的JPQL联接如下所示:

select o.id, l.id from Order o left join o.lines l
 类似资料:
  • 我试图实现连接,但我面临错误。我有产品表和商店表。产品表引用通过外键存储表,如下所示: 产品JAVA 现在,我展示tore.java 现在,我展示仓库 现在,这个错误是因为我在最后两个查询中实现了join。我想做的是购买所有商店位于特定城市或州的产品,如上图所示。 我遇到的错误是: 启动应用程序上下文时出错。要显示自动配置报告,请在启用调试的情况下重新运行应用程序。2016-10-16 09:53

  • 问题内容: 这是我运行的行: 这是我从LogCat获得的异常: 错误/AndroidRuntime(311):java.lang.NoClassDefFoundError:javax.sound.sampled.AudioSystem 这是我一年前编写的旧程序,然后运行良好。为什么会出现此异常,我该如何解决? 问题答案: 是JavaSound的一部分,而JavaSound是桌面JVM / SDK的

  • 我试图转换这个JPQL查询;

  • 问题内容: 在上面的代码中,我有一个简单的类和一个类级别的实例,也有一个具有相同名称的本地实例。运行上面的代码时,出现以下异常: 问题答案: 您的main方法创建一个实例(),该实例导致实例变量()的初始化,并创建另一个实例,依此类推… 您有无限的构造函数调用链,从而导致。 在上面的代码中,我有一个简单的类和一个类级别的实例 您没有课程级别的实例。您有一个实例级别的实例。如果要一个类级别的实例,请

  • 我有两张桌子锻炼和练习。我正在尝试使用与我们点击的锻炼匹配的workout_id获取所有锻炼。我做了一个内部联接查询,但它似乎没有返回任何东西。我的查询有问题吗? 我正在使用SQLite创建我的数据库。我已经检查了,以确保练习表中有练习,并且它们有一个workout_id。 2)回到我的WorkoutProvider类中,我将selectionArgs设置为: 并把它传递到我的RawQuery中。