gpt4 book ai didi

mysql - LEFT JOIN 与 ON - Spring 中的 JPA 存储库

转载 作者:行者123 更新时间:2023-11-29 21:21:01 24 4
gpt4 key购买 nike

我正在开发一个 Spring Boot 应用程序,并在我的存储库中努力处理 SQL 查询。该查询应选择从未在我的 Web 应用程序中发帖的员工的所有 ID。

在 MySQL Workbench 中,以下语句工作正常,我得到了预期的结果。

SELECT e.id FROM employees e LEFT JOIN posts p ON p.owner_id = e.id WHERE p.owner_id IS NULL

但我不知道如何在我的 PostRepository 中编写它,它扩展了 Spring 的 JpaRepository 。这是错误信息

o.h.hql.internal.ast.ErrorCounter : Invalid path: 'p.owner_id

这是我在存储库中使用的语句。

@Query("SELECT e FROM employees e LEFT JOIN p.posts p ON p.owner_id = e.id WHERE p.owner_id IS NULL")
List<Employee> getEmployeeIdsNeverVoted();

我不知道如何使用“ON”并为其定义路径。

最佳答案

您的查询和字符串在您要加入的表上看起来不一样。您的查询中有“posts p”,但字符串查询中有 p.posts p,查询中有 e.id,但字符串查询中有 e:

SELECT e.id FROM employees e LEFT JOIN posts p ON p.owner_id = e.id WHERE p.owner_id IS NULL
@Query("SELECT e FROM employees e LEFT JOIN p.posts p ON p.owner_id = e.id WHERE p.owner_id IS NULL")

关于mysql - LEFT JOIN 与 ON - Spring 中的 JPA 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35723862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com