Mysql 根据时间戳按年月日分组统计

时间:2021-06-11 15:10:51

Mysql 根据时间戳按年月日分组统计


create_time时间格式

SELECT DATE_FORMAT(create_time,'%Y%u') weeks,COUNT(id) COUNT FROM role GROUP BY weeks;

SELECT DATE_FORMAT(create_time,'%Y%m%d') days,COUNT(id) COUNT FROM role GROUP BY days;
SELECT DATE_FORMAT(create_time,'%Y%m') months,COUNT(id) COUNT FROM role GROUP BY months

create_time时间戳格式

SELECT FROM_UNIXTIME(create_time,'%Y%u') weeks,COUNT(id) COUNT FROM role GROUP BY weeks;
SELECT FROM_UNIXTIME(create_time,'%Y%m%d') days,COUNT(id) COUNT FROM role GROUP BY days;
SELECT FROM_UNIXTIME(create_time,'%Y%m') months,COUNT(id) COUNT FROM role GROUP BY months


[php] view plaincopyprint?
  1. date_default_timezone_set('PRC'); //默认时区  
  2. echo "今天:",date("Y-m-d",time()),"<br>";  
  3. echo "今天:",date("Y-m-d",strtotime("18 june 2008")),"<br>";  
  4. echo "昨天:",date("Y-m-d",strtotime("-1 day")), "<br>";  
  5. echo "明天:",date("Y-m-d",strtotime("+1 day")), "<br>";  
  6. echo "一周后:",date("Y-m-d",strtotime("+1 week")), "<br>";  
  7. echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "<br>";  
  8. echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")), "<br>";  
  9. echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."<br>";  
  10. echo "一个月前:".date("Y-m-d",strtotime("last month"))."<br>";  
  11. echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."<br>";  
  12. echo "十年后:".date("Y-m-d",strtotime("+10 year"))."<br>";  
-----------------------------------------------------------------------------------------------------------------------------------------[sql] view plaincopyprint?
  1. #mysql查询今天、昨天、7天、近30天、本月、上一月 数据  
  2. #今天  
  3. select * from 表名 where to_days(时间字段名) = to_days(now());  
  4. #昨天  
  5. SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 时间字段名) <= 1  
  6. #7天  
  7. SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)  
  8. #近30天  
  9. SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)  
  10. #本月  
  11. SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, ‘%Y%m’ ) = DATE_FORMAT( CURDATE( ) , ‘%Y%m’ )  
  12. #上一月  
  13. SELECT * FROM 表名 WHERE PERIOD_DIFF( date_format( now( ) , ‘%Y%m’ ) , date_format( 时间字段名, ‘%Y%m’ ) ) =1