微前端架构如何改变企业的开发模式与效率提升
1140
2022-10-18
mybatis中foreach嵌套if标签方式
目录mybatis foreach嵌套if标签xml文件 $和 #的区别union与union all区别mybatis if和foreach嵌套 (同一个列,不定个数的查询条件)有这么一种需求模板如下图
mybatis foreach嵌套if标签
代码实现:
Mapper.java文件
List
XXX.xml文件
union
select ysxmcode from ${qy}_yxsxk.tpc_ysxkz where yszbh=#{yszh,jdbcType=VARCHAR}
判断是否为第一个循环,是不加union拼接,否则加上
xml文件 $和 #的区别
${}在预编的时候会直接被变量替换,但是存在被注入的问题,表名必须用${},因为#{}在预编的时候会被解析为?占位符,但当被变量替换的时候会加上 ''单引号,表明不允许加单引号(但是反引号``是可以的)
union与union all区别
1.union all是直接连接,取到得是hWvRGunVR所有值,记录可能有重复;union 是取唯一值,记录没有重复。所以union在进行表链接后会筛选掉重复的记录,union all不会去除重复记录。
2.union将会按照字段的顺序进行排序;union all只是简单的将两个结果合并后就返回。从效率上说,union all 要比union快很多,所以,如果可以确认合http://并的两个结果集中不包含重复数据且不需要排序时的话,那么就使用union all。
mybatis if和foreach嵌套 (同一个列,不定个数的查询条件)
有这么一种需求
根据输入的内容的个数设置不同个数的查询条件(在一个列上设置不定个数的查询条件),这时就需要根
据foreach循环在一个列上拼接查询条件了。
模板如下图
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~