0
我正在使用休眠模板。 从控制器我打电话像下面DAO方法:删除结果集中的重复行
List<SearchQuestionnaire> lst =
questionnaireDAO.listQuestionnaire(searchQuestionnaire);
在DAO我得到的结果集象下面这样:
String queryString1 = "select
new com.apple.ist.cm.ruleadmin.model.SearchQuestionnaire
(qc.questionCategoryID,
qc.questionCategoryName,
qn.questionReferenceString,
qn.question,
qao.answerOptionGroupID,
aog.answerOptionGroup,
ans.answerStringValue) "
+ "from Questionnaire qn,
QuestionCategory qc,
QuestionAnswerOption qao,
AnswerOptionGroup aog,
AnswerString ans "
+ "where
qn.questionCategoryID = qc.questionCategoryID
and qn.questionID=qao.questionID
and qao.answerOptionGroupID=aog.answerOptionGroupID
and qao.answerStringID=ans.answerStringID";
query1 = (List<SearchQuestionnaire>) hibernateTemplate.find(queryString1);
现在从QUERY1,我得到的结果设置如下图所示:
A | B | C | D
-----|----|----|-----
a1 | b1 | c1 | d1
a1 | b1 | c1 | d2
a1 | b1 | c1 | d3
a2 | b2 | c2 | d4
a2 | b2 | c2 | d5
现在,在JSP,我想在一行中显示A,B,C,d,但A,B和C值的所有值,并在扩大该行d值应显示如下图所示:
a1 | b1 | c1
-------------
d1
d2
d3
a2 | b2 | c2
-------------
d4
d5
现在我面临着在列A,B和C
请以上建议删除重复值的问题。这里请考虑A,B,C和D是“queryString1”select子句的值。
我没有创建实体之间的任何关系,因为它导致了一些其他问题。因此,我正在使用HQL与“新”。用我的方法是否有任何解决方案来删除显示的重复条目?在这里,我可以去调用两个查询 - 一个用A,B和C,其次用A,B,C和D通过AJAX单击展开按钮。但它会成为DB的两个呼叫。 – Chandu
您的示例中没有任何重复条目:所有返回的行都不相同。按照我在答案中解释的结果处理结果。 –