You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求对应指定SQL查询语句的JPA方法名称

对应SQL的JPA实现方法

你可以通过两种常见方式实现这条SQL的JPA查询:

1. Spring Data JPA方法名自动生成查询

直接通过符合命名规范的方法名,让框架自动生成对应SQL,无需手动编写查询语句。假设你的实体类为Topic,对应的Repository接口方法如下:

List<Topic> findByIsDeletedFalseAndSkillIdOrderByDisplayOrderAsc(Long skillId);

说明:

  • findBy是查询前缀,后面跟着条件:IsDeletedFalse对应is_deleted = false,AndSkillId对应skill_id = :skillId
  • OrderByDisplayOrderAsc对应ORDER BY display_order ASC

2. 使用@Query注解手动定义查询

如果需要更灵活的控制,也可以用@Query注解直接编写JPQL或原生SQL:

方式一:JPQL查询(推荐,面向实体而非数据库表)

假设实体类Topic中,数据库字段is_deleted映射为isDeleted,skill_id映射为skillId,display_order映射为displayOrder:

@Query("SELECT t FROM Topic t WHERE t.isDeleted = false AND t.skillId = :skillId ORDER BY t.displayOrder ASC")
List<Topic> getTopicsBySkillId(@Param("skillId") Long skillId);

方式二:原生SQL查询

如果要直接复用原SQL结构,可以开启原生SQL支持:

@Query(value = "SELECT * FROM topic WHERE is_deleted = false AND skill_id = :skillId ORDER BY display_order ASC", nativeQuery = true)
List<Topic> getTopicsBySkillIdNative(@Param("skillId") Long skillId);

内容的提问来源于stack exchange,提问作者John Doe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 13:35:15