我想在hibernate中使用Criteria API执行算术运算。 SQL是:
SELECT salary + 500 FROM EMPLOYEE;
如何使用Criteria实现这一目标?
我能够使用Projection
仅检索SALARY列,但之后不确定如何对其执行算术运算:
session.createCriteria(Employee.class).setProjection(Projections.projectionList()。添加(Projections.property( “工资”))
请让我知道这件事。
此致
答案 0 :(得分:3)
你有几种可能性:
答案 1 :(得分:1)
请参阅下面的示例,该示例使用SQL Projections在价格和数量之间查找产品。
session.createCriteria(Order.class)
.createAlias("order", "od")
.setProjection( Projections.projectionList()
.add( Projections.groupProperty("od.orderId") )
.add( Projections.groupProperty("od.rate") )
.add( Projections.groupProperty("od.quantity") )
.add( Projections.sqlProjection(
"price * quantity as total",
new String[] { "totalAmount" },
new Type[] { Hibernate.DOUBLE }
)
)
);
希望它有所帮助。