MySQL原生查询无法在Spring Data JPA中工作,我可能做错了什么?

qkf9rpyu  于 2023-02-04  发布在  Mysql
关注(0)|答案(1)|浏览(106)

由于某些原因,我的查询在MySQL WorkBench中运行良好,但当添加到存储库中时,出现语法错误
SQL语法中有错误;查看与您的MySQL服务器版本对应的手册,了解在第1行使用near 'as e1,profile_history as e2 WHERE e2.profile_id = e1.profile_id and'的正确语法。

@Query(value = "( SELECT e2.* "
            + " FROM (select ph1.profile_id, max(ph1.last_updated_on) as last_updated_on2 "
            + "     FROM profile_history as ph1 "
            + "     GROUP BY ph1.profile_id ) as e1, profile_history as e2 "
            + " WHERE e2.profile_id = e1.profile_id and e2.last_updated_on = e1.last_updated_on2 )", nativeQuery = true)
    Page<ProfileHistory> getAllProfileHistoryByLastestRow(Pageable paging);

真诚地期望得到一个数据库命中没有任何错误和检索结果。

zzlelutf

zzlelutf1#

也许你需要在属性文件中指定方言。不知道你的MySQL版本,所以不能给予你具体的例子,但它应该是这样的:

spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect

相关问题