主要是运用mysql 的一些内置函数知识。
完整的SQL
SELECT SUM(TO_DAYS(create_time) = TO_DAYS(NOW())) today,
SUM(YEARWEEK(date_format(create_time,'%Y-%m-%d' )) = YEARWEEK(NOW())) weekday,
SUM(DATE_FORMAT(create_time,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m')) monthday,
SUM(YEAR(create_time) = YEAR(NOW())) yearday,
COUNT(0) total
FROM 表名 WHERE is_deleted=0
执行结果示例
相关函数知识点
接下来看看具体函数的意义:
- SUM() ,统计满足条件的数量;
- TO_DAYS(),从年份0000开始的天数;
- YEARWEEK(),用于查找给定日期的年和周;
- DATE_FORMAT() ,日期格式函数;
- YEAR(),从指定日期值中来获取年份值;
- CURDATE() ,返回当前的日期;
- NOW(),返回当前时间;
- COUNT(0),获取总数。