SQL片段的作用:将重复的SQL语句抽取出来,放到<sql>标签中,可以进行复用。
1.抽取重复的SQL语句
<sql id="where-title-author">
<if test="title!=null">
title like concat('%',#{title},'%')
</if>
<if test="author!=null">
and author = #{author}
</if>
</sql>
2.在SQL语句中引入SQL片段
<select id="queryBlogIf" resultType="blog" parameterType="map">
select * from mybatis.blog
<where>
<include refid="where-title-author"></include>
</where>
</select>
注意:最好不要太复杂的语句
不要将<where>和<set>标签放到SQL片段中。