如何在Ebean Java ORM语言中编写联接

时间:2016-08-04 10:46:45

标签: java mysql sql orm ebean

目前我的代码是

    int customerId = 4;
    String sql = "select id from coupon as A join coupon_use "
            + "as B on A.id=B.coupon where B.customer=" + customerId 
            + " and B.like_at is not null;";


   RawSql rawSql = RawSqlBuilder.parse(sql).create();  
   Query<Coupon> query = Ebean.find(Coupon.class);  
   query.setRawSql(rawSql);  
   List<Coupon> list = query.findList(); 
   return ok(Json.toJson(list));

如何避免编写手动sql查询但仍然让ORM生成该查询并将结果返回给我?

1 个答案:

答案 0 :(得分:0)

Ebean将根据where和order by中使用的路径/属性添加适当的连接。

couponUse.likeAt不为空。

假设couponUse.likeAt是正确的表达式路径... Ebean将添加一个连接以自动支持表达式。