mybatis动态sql中的sql标签——抽取可重用的sql片段


1.用<sql>标签抽取可重用的sql片段

     <!-- 抽取可重用的SQL片段,方便后面引用
          1.sql抽取,经常将要查询的列名,或者插入用的列名,之后方便引用
          2.include来引用已经抽取的sql
      
      -->
      <sql id="insertColumn">
            ename,gender,email,did
      </sql>

2.在多列名的sql中,使用<include>标签引用sql片段,如:

   <!-- 批量保存(foreach插入多条数据两种方法)
       int addEmpsBatch(@Param("emps") List<Employee> emps); -->
     <!-- MySQL下批量保存,可以foreach遍历 mysql支持values(),(),()语法 -->
     <insert id="addEmpsBatch">
     <!--  INSERT INTO emp(ename,gender,email,did) -->
      INSERT INTO emp(
        <!--   引用外部定义的sql -->
        <include refid="insertColumn"></include>
      )
      VALUES
      <foreach collection="emps" item="emp" separator=",">
      (#{emp.eName},#{emp.gender},#{emp.email},#{emp.dept.id})
      </foreach>
     </insert>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM