from class c where sum(elements(b.students).amount) < 1000不对,请教!!!急!!!!最好不要用left join的形式,虽然这种形式能够实现,但是需要创建其他类单独存放这个对象,会增加基础架构的工作量,最好的方式还是直接使用HQL查询,返回的直接就是List集合包含的就是各个对象,请教各位大神。
[size=18px]from 类名 别名 where 条件 如果有涉及到各种对应关系的话,那么 from 类名 别名 where 条件(别名.属性名 < 1000 ) 这种方式
//BankNote 表 public class BankNote implements Serializable{ /** * */ private static final long serialVersionUID = 1L;
private Long id;//id,自增 private SysUser createdUser; private Date createdDate; private Set<BankNoteSub> bankNoteSubs; //get和set方法就删掉了 } public class BankNoteSub implements Serializable{ /** * */ private static final long serialVersionUID = 1L;
private Long id;//id private BankNote bankNote; private String amount;//金额//删掉了get和set方法
如果有涉及到各种对应关系的话,那么
from 类名 别名 where 条件(别名.属性名 < 1000 ) 这种方式
//BankNote 表
public class BankNote implements Serializable{ /**
*
*/
private static final long serialVersionUID = 1L;
private Long id;//id,自增
private SysUser createdUser;
private Date createdDate;
private Set<BankNoteSub> bankNoteSubs;
//get和set方法就删掉了
}
public class BankNoteSub implements Serializable{ /**
*
*/
private static final long serialVersionUID = 1L;
private Long id;//id
private BankNote bankNote;
private String amount;//金额//删掉了get和set方法
}简单说就是查询BankNote类集合,但是这个条件却是BankNoteSub的amount < 1000,其中BankNoteSub是BankNote的子类,感谢大家,希望大家踊跃积极讨论