mybatis plus 动态sql 标签
时间: 2023-07-30 22:11:27 浏览: 167
MyBatis Plus是一款基于MyBatis的增强工具,提供了许多方便的功能来简化开发。在MyBatis Plus中,动态SQL标签是用于在SQL语句中根据条件动态生成SQL片段的工具。
MyBatis Plus提供了以下几种常用的动态SQL标签:
1. `<if>`标签:用于条件判断,根据条件动态生成SQL片段。
示例:
```xml
<select id="getUserList" resultType="User">
SELECT * FROM user
WHERE 1=1
<if test="username != null">
AND username = #{username}
</if>
</select>
```
2. `<choose>`、`<when>`、`<otherwise>`标签:用于多条件判断,选择满足条件的SQL片段。
示例:
```xml
<select id="getUserList" resultType="User">
SELECT * FROM user
WHERE 1=1
<choose>
<when test="username != null">
AND username = #{username}
</when>
<when test="email != null">
AND email = #{email}
</when>
<otherwise>
AND status = 1
</otherwise>
</choose>
</select>
```
3. `<trim>`、`<where>`、`<set>`标签:用于处理SQL片段的前缀和后缀,可以自动去除多余的逗号和AND/OR等连接符。
示例:
```xml
<update id="updateUser" parameterType="User">
UPDATE user
<set>
<if test="username != null">
username = #{username},
</if>
<if test="email != null">
email = #{email},
</if>
</set>
WHERE user_id = #{userId}
</update>
```
这些动态SQL标签可以根据业务需求灵活地组合使用,帮助开发者减少手动拼接SQL语句的工作量,提高开发效率。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)