MyBatis SQLServer 模糊查询LIKE、本年、本月、近三月、近两月
来源:互联网 发布:淘宝联盟能用电脑吗 编辑:程序博客网 时间:2024/04/30 23:01
MyBatis SQLServer 模糊查询LIKE
方法一:在SQL中拼接字符串
SELECT ID, MESSAGE_ID,MESSAGE_RESULT ,CREATE_TIME,MESSAGE_STATUS, FINISH_TIMEFROM USER_MESSAGE
WHERE 1 = 1
<if test="messageStatus != null and messageStatus != '' " >
AND MESSAGE_STATUS = #{messageStatus}
</if>
<if test="messageResult != null and messageResult != '' " >
AND MESSAGE_RESULT LIKE '%'+#{messageResult}+'%'
</if>
<choose>
<when test="finishTimeType==4"> <!-- 本年-->
AND DATEDIFF(YEAR,FINISH_TIME,GETDATE())=0
</when>
<when test="finishTimeType==3"> <!-- 近3月-->
AND FINISH_TIME >= DATEADD(MONTH,-3,GETDATE())
</when>
<when test="finishTimeType==2"><!-- 近2月-->
AND FINISH_TIME >= DATEADD(MONTH,-2,GETDATE())
</when>
<when test="finishTimeType==1"><!-- 本月-->
AND DATEDIFF(MONTH, FINISH_TIME, GETDATE())= 0
</when>
<otherwise><!-- 全部-->
AND FINISH_TIME IS NOT NULL
</otherwise>
</choose>
</select>
方法二:在Java代码中拼接字符串
Map<String,Object> paramMap=new HashMap<String,Object>();
paramMap.put("messageStatus", messageStatus);
paramMap.put("messageStatus", "%"+messageStatus+"%");
注意:使用${…}不能有效防止SQL注入,所以这种方式虽然简单但不推荐。paramMap.put("messageStatus", messageStatus);
paramMap.put("messageStatus", "%"+messageStatus+"%");
阅读全文
0 0
- MyBatis SQLServer 模糊查询LIKE、本年、本月、近三月、近两月
- Mybatis LIKE 模糊查询
- MyBatis 模糊查询 like %
- Mybatis like 模糊查询问题
- Mybatis like 模糊查询问题
- Mybatis的like模糊查询
- mybatis做like模糊查询
- mybatis做like模糊查询
- mybatis做like模糊查询
- MyBatis的like模糊查询
- mybatis like 模糊查询问题
- Mybatis中的模糊查询(like)
- mybatis做模糊查询 like
- mybatis做like模糊查询
- Mybatis中like模糊查询
- mybatis做like模糊查询
- mybatis做like模糊查询
- mybatis做like模糊查询
- Linux文件属性
- DNS解析过程详解
- windows7下配置GO语言开发环境 Ide开发编辑器推荐Gogland
- mysql 5.7.19 免安装版的一些坑
- CentOS 7 安装字体库 & 中文字体
- MyBatis SQLServer 模糊查询LIKE、本年、本月、近三月、近两月
- nodeJS之域名DNS
- UVA
- 域名解析中A记录、CNAME、MX记录、NS记录的区别和联系
- windows下python twisted库安装
- 双节点RAC搭建
- sparkSQL的整体实现框架
- 在linux下安装mysql
- nodeJS之fs文件系统