Mybatis-puls——条件查询的三种格式+条件查询null判定+查询投影
在MyBatis中,进行条件查询可以使用以下三种主要格式:
- 使用
<if>
标签进行条件判断。 - 使用
<choose><when><otherwise>
标签进行条件选择。 - 使用
<where>
标签自动处理前导的AND
或OR
。
下面是一个使用<if>
标签进行条件查询的例子:
<select id="selectUsersByCondition" parameterType="map" resultType="User">
SELECT * FROM users
<where>
<if test="username != null">
AND username = #{username}
</if>
<if test="email != null">
AND email = #{email}
</if>
</where>
</select>
在这个例子中,只有当username
和email
参数不为null
时,对应的查询条件才会被添加到SQL语句中。
对于null值的判定,可以直接在<if>
标签中进行判断。
查询投影(指定查询的列)可以直接在<select>
标签中指定列名:
<select id="selectUsersProjection" resultType="User">
SELECT id, username FROM users
</select>
在这个例子中,只查询id
和username
两列。
评论已关闭