您好我在spring data jpa repo中编写了以下方法:
@RestResource(exported = false)
@Query(
value = "select q.* " +
"from question q " +
"left join question_program qp " +
"on q.question_id = qp.question_id " +
"where " +
"q.difficulty_level_id = ?1 " +
"and " +
"q.paid = false " +
"and " +
"qp.program_id = ?2 " +
"order by random() " +
"limit ?3",
nativeQuery = true
)
List<Question> getFreeRandomQuestions(
@Param("df") Integer df,
@Param("programId") Integer programId,
@Param("qs") Integer qs);
它返回一个空列表,而当我在pgadmin中运行相同的查询时,我得到了所有想要的行。如果我用question_program
删除连接,它也适用于spring数据jpa。我做错了什么?
更新:
我尝试了select q ...
和select * ...
。两者都有同样的问题
更新:
我通过实现一个使用sessionFactory和raw sql查询获取数据的服务来解决这个问题!。