Mybatis中include标签的使用

1.正常情况下使用

sql标签用作封装参数或SQL块

<sql id="Param_Block">    名字随便起
  	id,
  	name,
  	phone
</sql>
或者
<sql id="Param_Block">
  	ORDER BY id limit 1
</sql>

include标签来调用sql标签中的东西

	SELECT
		<include refid="Param_Block"></include>
    FROM
    	user s
    WHERE
    	s.id= #{id}

2.进阶使用

  <sql id="Param_Block">
  	${user}.id,
  	${user}.name,
    ${user}.phone
  </sql>
	SELECT
		<include refid="Param_Block">
			<property name="user" value="s"/>
		</include>
    FROM
    	store s
    WHERE
    	s.store_sn = #{storeSn}

property中name为${}中的参数,value为数据表名,若如上存在别名,则用别名。
总之,就是把一块内容封装起来,不用每次都写,用的时候直接拿来用就可,此处需注意sql标签中的参数后逗号的问题,若引入两个内容块,则第一个最后的参数后需加逗号,以免造成SQL语句拼接错误


版权声明:本文为weixin_44332891原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。