Oracle中(column1,column2..)in(集合/子查询)的hibernate实现
Oracle中可以使用如下的SQL语句
?
?使用例子:
?
DetachedCriteria dc = DetachedCriteria.forClass(BzCompany.class);dc.setProjection(Projections.projectionList().add(Projections.max("clnDate")).add(Projections.groupProperty("companyName")));Criteria criteria = session.createCriteria(BzCompany.class);criteria.add(Example.create(bean).ignoreCase().enableLike(MatchMode.ANYWHERE)).add(MySubqueries.propertyIn(new String[]{"clnDate","companyName"}, dc));?
不过这是in(子查询)的实现,in(集合)是使用Restrictions
但奇怪的是Restrictions并不允许继承,构造函数没公开~~
如果要实现,继承就做不了的,但还是通过类似的手段实现目的。
http://raywithu.iteye.com/admin/blogs/1139511