1. 10分钟为粒度分组
SELECT concat(left(date_format(create_time, '%Y-%m-%d %H:%i'),15),'0') AS groupTime, count(*) FROM ai_t_task WHERE create_time BETWEEN '2023-01-14 00:00:00' AND '2023-01-16 23:59:59' GROUP BY groupTime
(19条消息) 【数据库-MySql】按时间间隔分组查询 group by count(*) date_format_少莫千华的博客-CSDN博客
#DATE_FORMAT(date,format) #%Y #### 2017 年 #%y ## 17 年 #%M November 月 #%m ## 11 月 #%H 小时 12小时制 #%h 小时 24小时制 #%I 小时 12小时制 #%k 小时 24小时制 #%l 小时 12小时制 #%i 分钟 #%s %S 秒 保留两位 #%D 天 加th #%d 天 保留两位,不足补零 #%e 天 #======周====== # %a %w %W # Mon 1 Monday 周一 # Tue 2 Tuesday 周二 # Wed 3 Wednesday 周三 # Thu 4 Thursday 周四 # Fri 5 Friday 周五 # Sat 6 Saturday 周六 # Sun 0 Sunday 周七 #======月====== # %b %M # Jan January 正月 # Feb February 二月 # Mar March 三月 # Apr April 四月 # May May 五月 # Jun June 六月 # Jul July 七月 # Aug August 八月 # Sep October 九月 # Nov November 冬月 # Dec December 腊月 #%c 月 #%f 毫秒 保留六位,不足补零 #%j 当年总天数 # eg.2017-12-31 365 # eg.2017-01-01 001 #%p AM\PM #%r 时间 AM\PM 12小时制 # eg.01:59:33 PM #%T 时间 24小时制 # eg.13:59:33 #%u %U 周数 从当年的第一个星期一开始计算 - 第二年清零 #%v 周数 从当年的第一个星期一开始计算 - 第二年不清零 #%v 周数 从当年的第一个星期天开始计算 - 第二年不清零 #%x %X %Y 年 保留四位,不足补零,两位补20 ,三位补0 #%y 年 保留年份后两位,不足补0 #显示世纪 SELECT CONCAT(left(YEAR(NOW()) + 100,2),'st'); SELECT MONTH(NOW()); SELECT day(NOW()); SELECT hour(NOW()); SELECT MINUTE(NOW()); SELECT SECOND(NOW()); #每十分钟 select concat(left(date_format(NOW(), '%Y-%m-%d %H:%i'),15),'0'); select concat(date(NOW()),' ',hour(NOW()),':',FLOOR(minute(NOW())/10)*10); select concat(date(NOW()),' ',hour(NOW()),':',CEIL(minute(NOW())/10)*10); select concat(date(NOW()),' ',hour(NOW()),':',ROUND(minute(NOW())/10)*10); select round(UNIX_TIMESTAMP(NOW())/(10*60)); #每小时 date_format(create_time '%Y-%m-%d %H') #当天 DATEDIFF(NOW(),create_time) = 0 #存储过程 DROP PROCEDURE IF EXISTS usp_cmd_info; CREATE PROCEDURE usp_cmd_info(IN dates VARCHAR(12)) BEGIN SELECT count(*) from prescription where create_time BETWEEN CONCAT(dates, " 00:00:00") AND CONCAT(dates, " 00:10:00") INTO @count_0; SELECT count(*) from prescription where create_time BETWEEN CONCAT(dates, " 00:10:00") AND CONCAT(dates, " 00:20:00") INTO @count_1; SELECT count(*) from prescription where create_time BETWEEN CONCAT(dates, " 23:40:00") AND CONCAT(dates, " 23:50:00") INTO @count_142; SELECT count(*) from prescription where create_time BETWEEN CONCAT(dates, " 23:50:00") AND CONCAT(dates, " 23:59:59") INTO @count_143; select @count_0 , @count_1, @count_142, @count_143; END; CALL usp_cmd_info("2017-11-21");
标签:count,10,00,#%,mysql,维度,NOW,SELECT From: https://www.cnblogs.com/hixiaowei/p/17056739.html