mybatis动态SQL
1.sql片段:sql语句中重复使用的可以提取成sql片段供调用(如数据表中的字段) sql标签是sql片段,id是被调用时用的 <sql id= "all" > u_id,u_username,u_password,u_sex,u_createtime,u_createtime,u_delete </sql> sql片段用include标签调用 <include refid="all"></include> 2.where+if where标签会在返回的sql语句前加where再去除and或or <select id="selectByWhere" resultMap="BaseMap"> select <include refid="all"></include> from tb_user <where> <if test="uid!=0"> and u_id=#{uid} </if> <if test="username!=null and username!=''"> <!-- 模糊查询 --> and u_username like concat('%',#{username},'%') </if> </where> </select> 以上还用了模糊查询:用concat函数拼接% 3.set+if set标签会在返回的sql前加set再去除最后的,(逗号)