mapper.xml中大于、小于、不等于号的方法
·
目录
一、背景
项目中有一个联合查询的SQL一直很慢,总感觉无法再继续优化了,实际上还是有继续优化的方案的。具体方案如下:1、将判断条件尽可能写在最里面的查询(如果需要的话);2、将is null 修改为不等于0。实施第二个方案的过程中发现,xml文件中直接写status<>0,报错,故寻找解决方案。
二、解决方案一:使用转义字符
大于号 > >
小于号 < <
大于等于号 >= >=
小于等于号 <= <=
不等于 <>
与 & &
单引号 " '
双引号 ' "
示例:
<select id="findByUserId" resultMap="BaseResultMap" parameterType="java.lang.String" >
select
<include refid="Base_Column_List" />
from t_user
where user_id = #{userId} and status <> 0
</select>
三、解决方案二:<![CDATA[ ]]>
大于等于 <![CDATA[ >= ]]>
小于等于 <![CDATA[ <= ]]>
不等于 <![CDATA[ <> ]]>
示例:
<select id="findByUserId" resultMap="BaseResultMap" parameterType="java.lang.String" >
select
<include refid="Base_Column_List" />
from t_user
where user_id = #{userId} and status <![CDATA[ <> ]]> 0
</select>
四、参考文献
1、mybatis在mapper.xml中处理大于、小于、不等于号的方法
mybatis在mapper.xml中处理大于、小于、不等于号的方法_gao505的博客-CSDN博客_mybatis xml 不等于
2、Mybatis中大于,小于,不等于等特殊符号的写法
https://blog.csdn.net/qq_29212701/article/details/83012104
更多推荐
已为社区贡献4条内容
所有评论(0)