【发布时间】:2021-10-24 15:57:26
【问题描述】:
我有一个问题。当然,我之前在网上找过解决办法。不幸的是,我还没有找到解决方案。
我有一个处理来自客户的信息的 Spring Boot 应用程序。但是这个应用程序不应该像往常一样指向一个表,而是指向一个从两个表中请求信息的视图。如何修改我的实体以引用视图?
我的观点
CREATE VIEW customers_view
SELECT
customer_id, firstname, lastname,
(SELECT ordernumber FROM orders
WHERE orders.customer_id = custoumer.id
ORDER BY customer_id DESC)
FROM customers
我的实体
@Entity
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class CustomerInformation {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@EqualsAndHashCode.Exclude
private Long id;
@Column(name = "customer_id")
private Long customer_id;
@Column(name = "firstname")
private String firstname;
@Column(name = "lastname")
private String firstname;
@Column(name = "ordernumber")
private String firstname;
}
【问题讨论】:
-
跳过子查询,改为执行 LEFT JOIN。 (现在如果客户有多个订单,您将收到错误消息。)
-
很抱歉给您带来了困惑。实际上它是关于另一个实体的,但我不想发布它。所以我只是创建了一个案例研究。实际上只是建立一对一的关系。
标签: java sql spring-boot view