Hibernate Projection使用case子句

时间:2017-02-23 09:54:43

标签: java case hibernate-criteria

我有一个名为Student的实体类。

@Table(name="t_student")
class Student{
    private String name;

    @Column(name="f_name")
    private String fatherName;

    private Integer age;

    // Accessor and Mutators methods ....
}

这是我的SQL获得特定结果。这很好。

select s.name, s.f_name, case when s.age > 23 and s.age <=30
then 'Eligible' else 'Not Eligible' end is_eligible from t_student s;

在上面的示例中,我拉了3(一个基于case)。我想将原始SQL迁移到hibernate Criteria查询,如下所示....

session.createCriteria(Student.class)
    .setProjection(Projections.projectionList()
                           .add(Projections.property("name"))
                           .add(Projections.property("f_name"))
                           .add(/**Is there any options to use 'case' here for 'age'?*/)
    )
    .list();

如何在CASE中使用Projections

0 个答案:

没有答案