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

具有可能的第二个链接实体的JPQL结果列表

毋修为
2023-03-14

我有两个JPA实体,Customer和Address。Address有指向Customer的链接,但Customer没有指向Address的链接。我知道这听起来很奇怪,尽管我们目前无法改变这一点。

数据库中,我们有100个客户,和10个地址链接到客户。我希望运行一个查询,返回所有100个客户的列表,并在第二列(如果可用)中返回地址。

我可以执行如下查询:

选择c,从Customer c中选择a,地址a,其中a.customerId=c.id;

这将返回一个我想要的列表,尽管只有10个客户实际上有一个地址。

在JPQL中是否有一种方法来获得100个客户的列表,并在第二个数组位置中获得地址或null(如果没有)?

共有1个答案

姬高澹
2023-03-14

你需要一个左外连接。类似于

SELECT Customer.id, Customer.name, Address.street, ... from Customer LEFT OUTER JOIN Address on address.customer_id = customer.id; 

您可以在这里找到如何使用jpa的描述:

如何创建具有左外部连接的JPA查询

迈克

 类似资料:
  • 问题内容: 在我们的hibernate项目中,使用java bean模式对实体进行编码。在我们的代码中,有很多地方有人忘记了设置变量的设置,但由于NOT NULL字段而导致异常。 是否有人在使用构建器来构建其实体或使其不可变? 我正在尝试找到一种不是Java bean模式样式的有效模式。 谢谢 问题答案: 如果使Bean不可变,则必须使用字段级访问,并且这附带了它自己的一系列问题,在此进行了详细讨

  • 这是问题的链接:所有可能的完整二叉树。 给定一个整数,返回包含节点的所有可能的完整二叉树的列表。答案中每个树的每个节点都必须有。 答案的每个元素都是一个可能树的根节点。您可以按任意顺序返回最终的树列表。 完整的二叉树是一个二叉树,其中每个节点正好有或子节点。 例1: 输入: 输出: 在这个问题中,我必须返回所有可能的完整二叉树的列表,这是我的java代码的解决方案,有人能帮我在哪里我的代码是错误的

  • Contact实体定义了与两个MySQL表中存在的email和nickname类型的实体集合的关系。 我的问题是返回的结果集有重复的电子邮件和昵称。 当重复发生时,Hibernate正在运行以下操作。 问候你,伊恩。

  • 我在两个实体之间有双向或父/子关系: 我要选择没有的所有或的属性设置为的。 我使用的是。

  • 前言 在之前的文章中介绍了代码的编写方式,在本篇文章中将继续介绍更多的性能优化小技巧 循环优化 循环主要是用来遍历数据,遍历数据又比较浪费性能,我这里呢有一些小技巧供大家参考 //普通写法 const arr2 = [1, 2, 3, 6, 9, 5, 4]; for (let index = 0; index < arr2.length; index++) { console.

  • 问题内容: 我有以下实体: 我的属性ScriptItem是其他3个类的接口。是否可以将JPA配置为在运行时执行时设置正确的类ID? 其他资源: 我应该使用哪些注释来让JPA理解要保存3个类之一的ID? 提前致谢, 问题答案: 这确实是一个好主意,但不幸的是,JPA不支持将接口直接映射为实体属性。 您只能映射直接用注释的顶级类。这个顶级类可以实现一个接口。 这个功能已经被要求并讨论了很长时间。 根据