您的位置:首页 > 其它

Ebean查找,条件仅针对目标表格join的表格的信息举例

2016-01-23 16:26 393 查看
List<Module> query = Ebean.createQuery(Module.class).fetch("permissions").setDistinct(true)
.where().join("permissions").where().le("product_level", level).query().findList();


Module.class 里有个 List<Permission>, 数据库表示为 permission 表格里foreign key(module_id) 到 module表格。用上述方法相当于:

select distinct t0.id c0, t0.app c1, t0.name c2, t0.display_name c3, t0.description c4, t1.id c5, t1.name c6, t1.display_name c7, t1.description c8, t1.permission_number c9, t1.product_level c10, t1.module_id c11 from module t0 left outer join control_permission t1 on t1.module_id = t0.id where product_level <= 2 order by t0.id

java 会自动把查找到的相同的Module 放进一个list, 每个Module对象里面的permission list 里面满足条件也就是 product_level <=level 的项目拿回来。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: