我正在尝试从MYSQL
获取记录,同时发布来自GET
的{{1}}请求。 POSTMEN
查询可在SQL
控制台中使用,但不能在JPA存储库中使用。
MYSQL
实际结果
未选择数据
预期结果
数据库中有一行可用,该行是在与MySQL控制台一起使用时作为查询结果返回的,也应在此处返回。
更新 通过按照建议的方式更新查询,在输出中未进行任何更改。这是打印的查询
@Repository
public interface RecipeRepository extends JpaRepository<Recipe, Long> {
@Query(value = "select * from Recipe where Recipe.id in (select Recipe_id
from Recipe_keywords where keywords like '%:keyword_rec%') ", nativeQuery = true)
List<Recipe> findByKeyword(@Param("keyword_rec") String keyword_rec);
}
答案 0 :(得分:1)
错误已解决,将查询更改为
select * from Recipe r where r.id in (select rk.Recipe_id from Recipe_keywords rk where rk.keywords like %:keyword_rec%)
答案 1 :(得分:0)
因为您在MySQL
上编写的查询与您为JPA
编写的查询稍有不同。
例如SELECT * FROM Customer becomes "SELECT c FROM Customer c"
看看链接: https://www.oracle.com/technetwork/articles/vasiliev-jpql-087123.html