refid(reference id)는 반복되는 쿼리를 미리 작성해 놓고 재활용 할 수 있게 해준다.
반복할 쿼리 선언 : <sql id="">
선언한 쿼리 사용 : <include refId="">
변수 사용 방법 <property name="">
작성 예시
<mapper>
<sql id="test_a">
SELECT *
FROM TABLE
</sql>
<sql id="test_b">
SELECT *
FROM TABLE
WHERE ${param1}
</sql>
<select id="getListA" resultType="hashmap">
<include refid="test_a" />
WHERE filed = #{value}
</select>
<select id="getListB" resultType="hashmap">
<include refid="test_b">
<property name="param1" value="value">
</include>
WHERE filed = #{value}
</select>
</mapper>
쿼리 실행 결과
getListA, getListB 의 출력 결과 동일
1
2
3
|
SELECT *
FROM TABLE
WHERE filed = #{value}
|
cs |
반응형
'Database' 카테고리의 다른 글
[MyBatis] #, $ 차이 (1) | 2017.06.15 |
---|---|
SQL에서 행을 열로 바꾸는 방법 (0) | 2017.05.15 |
[MYSQL] 빈 ROW 생성 (0) | 2017.03.30 |
MYSQL SEQ가 포함된 Code 만들기 (0) | 2017.03.10 |
샤딩(Sharding)과 파티셔닝(Partitioning) (0) | 2017.02.22 |