• mysql统计今天,昨天,本周,上周,本月,上月数据(mybatis版本)


    create_time为创建时间
       <!--今天-->
        <sql id="today">
            and to_days(create_time)= to_days(now())
        </sql>
    
        <!--昨天-->
        <sql id="yesterday">
            and to_days(now())-to_days(create_time) <![CDATA[ <= ]]> 1
        </sql>
    
        <!--本周-->
        <sql id="thisWeek">
            and YEARWEEK(date_format(create_time,'%Y-%m-%d')) = YEARWEEK(now())
        </sql>
    
        <!--上周-->
        <sql id="lastWeek">
            and YEARWEEK(date_format(create_time,'%Y-%m-%d')) = YEARWEEK(now())-1
        </sql>
    
        <!--本月-->
        <sql id="thisMonth">
            and date_format(create_time,'%Y-%m')=date_format(now(),'%Y-%m')
        </sql>
    
        <!--上月-->
        <sql id="lastMonth">
            and date_format(create_time,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m')
        </sql>
    b_share_info为分享表
    b_look_info为查看表
       <!--查询分享数-->
        <select id="queryShareCountByDayNumber" parameterType="java.lang.Integer" resultType="java.lang.Integer"
                useCache="false">
            select count(*) as shareCount
            from b_share_info
            where user_id = #{userId}
            <if test="dayNumber != null and dayNumber == 1">
                <include refid="today"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 2">
                <include refid="yesterday"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 3">
                <include refid="thisWeek"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 4">
                <include refid="lastWeek"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 5">
                <include refid="thisMonth"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 6">
                <include refid="lastMonth"></include>
            </if>
        </select>
    
        <!--查询被查看数-->
        <select id="queryLookCountByDayNumber" parameterType="java.lang.Integer" resultType="java.lang.Integer"
                useCache="false">
            select sum(look_count) as lookCount
            from b_look_info
            where user_id = #{userId}
            <if test="dayNumber != null and dayNumber == 1">
                <include refid="today"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 2">
                <include refid="yesterday"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 3">
                <include refid="thisWeek"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 4">
                <include refid="lastWeek"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 5">
                <include refid="thisMonth"></include>
            </if>
            <if test="dayNumber != null and dayNumber == 6">
                <include refid="lastMonth"></include>
            </if>
        </select>
    一辈子很短,努力的做好两件事就好;第一件事是热爱生活,好好的去爱身边的人;第二件事是努力学习,在工作中取得不一样的成绩,实现自己的价值,而不是仅仅为了赚钱。
  • 相关阅读:
    webdriver学习
    [Sqlite]-->Java使用jdbc连接Sqlite数据库进行各种数据操作的详细过程(转)
    java 二维码
    java 解析json超大文件(转)
    嵌套三目运算符
    实体的字段以is开头的教训
    easyui中formatter的使用
    springmvc中的controller是单例的
    hibernate 中baseservice中添加事物
    easyui中添加富文本编辑器
  • 原文地址:https://www.cnblogs.com/antao/p/13696738.html
Copyright © 2020-2023  润新知