MyBatis의 동적 SQL 기능을 사용하면 하나의 SQL문으로 여러 케이스를 처리할 수 있다
<choose>
if-else문
과 유사<otherwise>
의 SQL이 반환<choose>
<when test="조건1">SQL</when>
<when test="조건2">SQL</when>
<otherwise>SQL</otherwise>
</choose>
<sql>
과 <include>
<sql>
태그는 다른 구문에서 재사용가능한 SQL구문을 정의할 때 사용<sql>
태그 내에 있는 쿼리들을 재사용하고 싶다면 재사용할 쿼리의 상단에 선언되어야 함<sql>
태그 내에 파라미터 값 추가 가능. 단 해당 태그를 불러오는 쿼리문에서 <sql>
태그 내에 선언된 파라미터 값을 처리할 수 있는 인자 값이 존재해야만 에러가 나지 않음<include>
태그는 같은 파일 내에 정의해둔 <sql>
태그 내의 쿼리들을 불러옴<sql id="title">
where seq = #{seq}
</sql>
<select id="getTitle" resultType="String">
select title from table
<include refid="title"></include>
</select>
https://atoz-develop.tistory.com/entry/MyBatis-%EB%8F%99%EC%A0%81-SQL-choose%EC%99%80-set%EC%9D%84-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EB%8F%99%EC%A0%81-SQL-%EB%A7%8C%EB%93%A4%EA%B8%B0
https://kimvampa.tistory.com/176![](https://velog.velcdn.com/images/judyan/post/76849168-d365-409c-bec0-28aa52cab796/image.png)