我遇到的情况是,我要根据不同的条件在两个查询中获取数据并进行合并。
现在,我需要根据某些条件从给定的两个查询的并集结果中获取数据。 第一个查询:
Criteria criteria = irisSessionFactory.getSession().createCriteria(Task.class,"tasks").add(
Restrictions.and(Restrictions.isNull("claimedby"),Restrictions.eq("projects.projectname", projectName)));
criteria.add(Restrictions.eq("status", "Check"));
criteria.addOrder(Order.desc("disableCommit")).addOrder(Order.desc("taskid"));
List<Task> tasks = criteria.list();
第二个查询
Criteria criteria2 = irisSessionFactory.getSession().createCriteria(Task.class,"tasks").add(
Restrictions.and(Restrictions.isNull("claimedby"),Restrictions.eq("projects.projectname", projectName)));
criteria2.add(Restrictions.ne("status", "Check"));
criteria2.addOrder(Order.asc("taskid"));
criteria2.addOrder(Order.asc("status"));
List<Task> tasks2 = criteria2.list();
合并结果
tasks.addAll(tasks2);
我想在这两个条件的UNION上创建条件。 我该如何进行??