【发布时间】:2016-08-15 18:33:53
【问题描述】:
我正在尝试从我的应用程序中的 JPARepository 获取聚合数据。 SQL 类比类似于:
SELECT c.sex as Sex, count(c.sex) as Count
FROM customer c
GROUP BY c.sex
实体是:
@Entity(name = "customer")
public class Customer {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private Person.Sex sex;
...
}
我的 JPARepository 是:
public interface CustomerRepository extends JpaRepository<Customer, Long> {
@Query(value = "SELECT c.sex as Sex, count(c.sex) as Count FROM customer c")
List<Object[]> countBySex();
}
SQL方式不返回任何结果,为什么不返回,有非SQL方式吗?
我正在使用 Spring 1.4.0.RELEASE。
提前致谢!
编辑:当我使用相关类 (Customer.class) 的映射为 JPA 添加 persistence.xml 配置时,SQL 方法起作用了。
【问题讨论】: