【发布时间】:2011-09-12 18:58:06
【问题描述】:
我想知道他们是否可以使用 Criteria API 对象轻松执行 oracle INTERSECT。
使用休眠 3.2
前。我想要名称为 dora 和 diego 的“表”中存在的所有 t.value。
SELECT t.value from table t where t.name = 'Dora'
相交
从表 t 中选择 t.value,其中 t.name = 'Diego'
我想我将不得不使用 Restriction sqlRestriction 或编写一个称为执行此操作的 oracle 存储过程。还有其他建议吗?
解决方案 1:
Session sessionFactory = sessionFactory.getCurrentSession();
String intersetSQLQuery = "SEE QUERY STRING BELOW";
SQLQuery query = sessionFactory.createSQLQuery( intersetSQLQuery );
query.addScalar( hibernate_mapped_field_name,Hibernate.STRING);
//Returns a list of string objects
nameList = query.list();
【问题讨论】: