【发布时间】:2018-12-05 02:56:27
【问题描述】:
我在 Spring Data JpaRepository 中使用原生查询,如下所示:
@Query(value = "SELECT SUBSTRING_INDEX(u.email, '@', -1) as domain, COUNT(*) as domainCount r.invite_organization_id"
+ " FROM users u,_registrations r where u.user_id=r.user_id and r.invite_organization_id=?1"
+ " GROUP BY "
+ "SUBSTRING_INDEX(u.email, '@', -1) ORDER BY domainCount DESC", nativeQuery = true)
List<Object[]> countTopDomain(String orgId);
上面给了我以下例外: 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“r.invite_organization_id FROM users u,registrations r where u.user”附近使用正确的语法
我将如何从方法 countTopDomain() 参数中传递邀请组织 ID(在查询中)的值。
【问题讨论】:
-
countTopDomain(@Pram("orgId") String orgId) 和 :orgId 而不是 ?1 在查询中
-
即使根据您的更改,我也会收到以下错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“r.invite_organization_id FROM srs_users u,srs_user_registrations r where u.user”附近使用正确的语法
标签: spring-boot jpa spring-data-jpa spring-data