您的位置:首页 > 数据库 > MySQL

Mysql,Mybatis做时间过滤报表:日周月统计

2017-09-13 14:28 537 查看
声明:classType------0:今日,1:周,2:月,3:自定义,4:最近七天

<choose>
<when test="classType == 1">
AND DATE_FORMAT(s.create_time,'%Y%u') = DATE_FORMAT(CURDATE( ),'%Y%u')
</when>
<when test="classType == 2">
AND DATE_FORMAT(s.create_time,'%Y%m') = DATE_FORMAT(CURDATE( ),'%Y%m')
</when>
<when test="classType == 3">
<choose>
<when test="beginTime!=null and beginTime!='' and endTime == '' ">
AND Date(s.create_time) between #{beginTime,jdbcType=VARCHAR} and CURDATE()
</when>
<when test="endTime!=null and endTime!='' and beginTime == '' ">
AND Date(s.create_time) <= #{endTime,jdbcType=VARCHAR}
</when>
<when test="beginTime!=null and beginTime!='' and endTime!=null and endTime!= '' ">
AND Date(s.create_time) between #{beginTime,jdbcType=VARCHAR} and #{endTime,jdbcType=VARCHAR}
</when>
<otherwise>
AND Date(s.create_time) = CURDATE()
</otherwise>
</choose>
</when>
<when test="classType == 4">
AND date(s.create_time) between date_sub(curdate(), INTERVAL 6 DAY) and curdate()
</when>
<otherwise>
AND Date(s.create_time) = CURDATE()
</otherwise>
</choose>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: