@Repository
public interface ParticipantRepository extends CrudRepository<Participant,Integer> {
@Query("select e from Participant e WHERE e.event.venue =:venue")
List<Participant> getParticipantsByEventVenue(String venue);
}
正如你在这里看到的^我必须用e来表示*符号。这就是JPQL的工作方式吗?
在JPQL中有*符号吗?
是的,这是JPQL特有的语法。但是,如果您喜欢使用本地SQL查询,也可以这样做:
@Repository
public interface ParticipantRepository extends
JpaRepository<Participant,Integer> {
@Query("select * from Participant e WHERE
e.event.venue =:venue",nativeQuery = true)
List<Participant> getParticipantsByEventVenue(String venue);}
还建议使用JpaRepository而不是crudRepository。