1
아래와 같이 MyBatis 매퍼 XML 파일에 두 개의 선택 항목이 있습니다. 선택 초 getResultsB
두 개의 다른 선택 결과를 하나의 결과 집합으로 합치십시오.
getResultsAAndB
을 getResultsA
- 하는 것은 단지 결과를 가져옵니다 : 나는 세 가지 시나리오를 가지고 내 XML입니다 :
<select id="getResultsA" resultMap="myResultMap" parameterType="MyParameters"> <!-- select statement 1 --> </select> <select id="getResultsB" resultMap="myResultMap" parameterType="MyParameters"> <!-- select statement 2 --> </select> <select id="getResultsAAndB" resultMap="myResultMap" parameterType="MyParameters"> <!-- NEED TO MERGE RESULTS FROM BOTH getResultsA & getResultsB--> </select>
시나리오 1과 2, 나는 각각의 선택을 따로 사용할 수있다. 어떻게 새로운 SQL 문을 조합으로 작성하지 않고도 세 번째 시나리오를 달성 할 수 있습니까? 나는 현재 두 개의 별도 매퍼 호출에 의해 이것을 달성하고 나서
list.addall(anotherList)
을 Java로 사용하여 결과를 병합합니다. 다른 말로하면, 나는 select와 result map이 같은 것이되는 결과를 병합 할 필요가있다. 이것이 가능해야한다고 생각한다.
이미 언급 한 SQL (UNION 또는 Java의 addAll())에 대한 일반적인 해결책이 있는지 의심 스럽습니다. select 문을 게시하십시오. 문제 해결 방법이있을 수 있습니다. –