알버트의 개발하는 블로그

[DB] 쿼리문 <sql> 태그, <include> 태그 사용법 본문

프로그래밍 언어/DB

[DB] 쿼리문 <sql> 태그, <include> 태그 사용법

알버트 2022. 5. 10. 14:02

1. <sql> 태그

 <sql> 태그는 다른 구문에서 재사용할 SQL구문을 정의할 때 사용한다. 사용방법은 <sql>태그 id속성 추가 및 id속성 값을 부여 해주고 태그 내에 사용할 쿼리를 작성하면 된다.

	<sql id="id값">
        -- 사용할 쿼리
	</sql>


 하지만 주의사항이 있는데 그것은 <sql> 태그는 쿼리파일의 상단에 선언되어야 한다는점입니다. 특정 태그의 쿼리에서 <sql>태그의 쿼리를 불러오는 명령을 하였지만, 상단에 위치해있지않고 하단에 선언되어 있다면 불러올수 없다.
 <sql>태그 내에 파라미터 값을 추가해줘도 상관없다. 단 해당 태그를 불러오는 쿼리문에서 <sql> 태그 내에 선언된 파라미터 값을 처리할 수 있는 인자 값이 존재해야만 에러가 나지 않는다.

	<sql id="t1">
		title = #{title}
	</sql>


 

2. <include>
 같은 파일 내에 정의해둔 <sql> 태그 내의 쿼리들을 불러올 수 있게 해준다. 즉, sql태그와 include태그는 한쌍이라고 보면 된다. 사용법은 <include> 태그를 선언하고 해당 태그에 refid속성을 추가 해주고 속성 값으로 불러오고자 하는 <sql> 태그의 id속성 값을 넣어준다.

	<sql id="t1">
		where bno = #{bno}
	</sql>
  
  
	<select id="getTitle" resultType="String">

		select title from tbl_board
    		<include refid="t1"></include>
    
	</select>