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
您的示例中沒有任何重複條目:所有返回的行都不相同。按照我在答案中解釋的結果處理結果。 –