Mybatis之动态SQL
2021/9/30 19:13:05
本文主要是介绍Mybatis之动态SQL,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
<if>标签:
根据实体类的不同取值,使用不同的 SQL语句来进行查询。比如在 id如果不为空时可以根据id查询,如果username 不为空时还要加入用户名作为条件。这种情况在我们的多条件组合查询中经常会碰到。
1 <select id="findByCondition" parameterType="user" resultType="user"> 2 select * from User 3 <where> 4 <if test="id!=0"> 5 and id=#{id} 6 </if> 7 <if test="username!=null"> 8 and username=#{username} 9 </if> 10 </where> 11 </select>
<foreach>标签:
循环执行sql的拼接操作,例如:SELECT * FROM USER WHERE id IN (1,2,5)。传入的参数得是数组或者集合
1 <select id="findByIds" parameterType="list" resultType="user"> 2 select * from User 3 <where> 4 <foreach collection="array" open="id in(" close=")" item="id" separator=","> 5 #{id} 6 </foreach> 7 </where> 8 </select>
foreach标签的属性含义如下:
<foreach>标签用于遍历集合,它的属性:
• collection:代表要遍历的集合元素,注意编写时不要写#{}
• open:代表语句的开始部分
• close:代表结束部分
• item:代表遍历集合的每个元素,生成的变量名
• sperator:代表分隔符
这篇关于Mybatis之动态SQL的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-30java最新版本是什么,有什么特性?-icode9专业技术文章分享
- 2024-11-30[开源]27.8K star!这款 Postman 替代工具太火了!
- 2024-11-30Gzip 压缩入门教程:轻松掌握文件压缩技巧
- 2024-11-29开源工具的魅力:让文档管理更“聪明”
- 2024-11-29Release-it开发入门教程
- 2024-11-29Rollup 插件入门教程:轻松掌握模块打包
- 2024-11-29从零到一,产品经理如何玩转项目管理和团队协作
- 2024-11-29如何通过精益生产管理工具帮助项目团队实现精准进度控制?
- 2024-11-29低代码应用开发课程:新手入门与基础教程
- 2024-11-29入门指南:全栈低代码开发课程